2011-11-16 28 views
12

href etiketinde html dosyasından JavaScript İşlevi nasıl çağrılır? Birkaç sekme oluşturdum. Kullanıcı herhangi bir sekmeyi tıklattığında, JavaScript işleviyle birlikte hrefin çağrılması gerekir. Nasıl yapabilirim?Nasıl javascript çağrısı html'deki href etiketinden işlev?

<?php if($order == 1){ ?> 
<li class="cat-one"><a href= "javascript:loadProducts($categoryId)" > <?php echo $categoryName ?> </a></li> 
<?php } ?> 

Bu benim JavaScript

href etiketinde
<script type="javascript" > 
function loadProducts($categoryId) 
{ 
    alert("Hello World!"); 
    return false; 
} 

</script> 
+0

Bize gösterilecek bir kodunuz var mı? – Fluff

+0

Yardım almak isterseniz, bazı kodları paylaşmanız gerekir. Bir sekmeyi görüntülemek ve kullanıcı bu sekmeyi tıkladığında bir JavaScript işlevi yürütmek istiyorsanız, bunu genellikle sunucu tarafı kodu olmadan, yani PHP olmadan çözersiniz. –

+0

Sunucu ve istemci tarafı eylemleri arasında fark yaratmak zorundasınız. PHP sadece sunucuda kullanılabilir. HTML, CSS ve Javascript sadece istemci tarafında kullanılabilir. 'Href' özniteliğine sahip bir etiket, yalnızca bir HTML-only client tarafıdır. Ie9 içinde – reporter

cevap

21

olduğunu bir bağlantı belirtmeden, sizin javascript fonksiyonu adı belirtin. href kullanmayın örnek

<a href='javascript:myFunction()'> Click Me! <a/> 
+0

bu, fonksiyonun çalışmasını ve sayfadan uzaklaşmasını sağlar. Bunu asla ie7'de yapmak için kullanmayın. geçici çözümler? – stu

6

için

,

<a href="http://www.example.com" onclick="return confirm('are you sure?')">test</a> 

this example bakınız bunun için onclick özellik kullanmak

DÜZENLEME (kod söz konusu eklenen beri): bu, JS işlevinizi çağırmalıdır:

<?php if($order == 1){ ?> 
    <li class="cat-one"> 
    <a href="javascript:void(0)" onclick="loadProducts(<?php echo $categoryId ?>)"> 
     <?php echo $categoryName ?> 
    </a> 
    </li> 
<?php } ?> 
+0

Ve Nasıl Çalışabilirim?

0

Eğer sınıfla çağırabilir jQuery kütüphanesi varsa: For

$(".loadProducts").click(function(event) { 
     // Default action of the event will not be triggered. 
     event.preventDefault(); 
     // Get category ID 
     var categoryId = $(this).attr('data-categoryid'); 
     // TODO 
     alert("Hello World!"); 
     return false; 
}); 

:

<li class="cat-one"><a href="#" class="loadProducts" data-categoryid="<?php echo $categoryId;?>" > <?php echo $categoryName ?> </a></li>