2014-06-27 62 views
0

我試圖通過按鈕用下面的代碼加載功能call_ajax_add_to_quotelistJS不開火點擊

$cartlink .= '<a class="add_to_cart button alt" href="javascript:void(0);" onclick="call_ajax_add_to_quotelist(add_to_quotelist_ajax_url,'.$product->id.');" '.$style.'>'.$label.'</a>';

上面的代碼加載細查看源代碼上點擊它顯示死者然而,當沒有控制檯錯誤我已經加載了js文件中的函數(它屬於另一個插件我黑客與其他插件的相同動作的WP插件)

腳本加載:

$quotePluginJSUrl = site_url().'/wp-content/plugins/dvin-wcql/js/dvin_wcql.js'; 
?> 
     <script src="<?php echo $quotePluginJSUrl; ?>"></script> 
<?php 
+0

嘗試使其調用此方法,看它是否是一個點擊或功能問題。 console.log(「clicked!」); – rubenwardy

+0

您沒有關閉錨點 – Sekai

+0

我認爲我們缺少代碼。 – rubenwardy

回答

1

我將在第一次檢查,如果call_ajax_add_to_quotelist是真的在JavaScript控制檯功能,如果add_to_quotelist_ajax_url是正確的值。

此外,推薦不是使用onclick。我推薦使用jQuery事件綁定器.on()

EXPL:

<?php 
$cartlink .= "<a class='add_to_cart button' data-id='{$product->id}' 
    href='javascript:;' {$style}>{$label}</a>"; 
// ... more products 
?> 

// **one** <script> after all products 
<script> 
jQuery(window).on('click', '.add_to_cart.button', function() { 
    call_ajax_add_to_quotelist(add_to_quotelist_ajax_url, $(this).data('id'); 
} 
</script> 
+0

完全同意'data-'的使用。 – Debflav

+0

謝謝,你的腳本如何給我一些意想不到的令牌;錯誤 –

+0

@Debflav我很抱歉,但我仍然對它應該是什麼感到困惑 –

1

關閉錨

<a>...</a> 
0

,因爲你是動態添加錨點,你需要使用.addEventListener如果你使用JS或事件代理,如果你使用jQuery

例如

$('.button').on('click',function(){ 
    call_ajax_add_to_quotelist(add_to_quotelist_ajax_url,'.$product->id.'); 
}); 

另外,您還沒有關閉在代碼中的錨標記這可能會導致你一些問題:

$cartlink .= '<a class="add_to_cart button alt" href="javascript:void(0);" '.$style.'>'.$label.'</a>' 
+0

+1的解釋,但''。$ product-> id.''應該是PHP代碼。它不會工作。 – Debflav