我知道下面的函數來觸發點擊:jQuery的點擊一個鏈接編程
var link = $("#linkId");
link.click();
但對我來說我不有編號,但我有name屬性,所以我用:
var link = $('a[name=content_'+params['p']+']');
link.click();
但它沒有點擊,上面的代碼有什麼問題。如果我使用身份證,它工作正常。
我知道下面的函數來觸發點擊:jQuery的點擊一個鏈接編程
var link = $("#linkId");
link.click();
但對我來說我不有編號,但我有name屬性,所以我用:
var link = $('a[name=content_'+params['p']+']');
link.click();
但它沒有點擊,上面的代碼有什麼問題。如果我使用身份證,它工作正常。
,直到你click
事件綁定到你不能觸發點擊通過程序中的錨標記。
你可以這樣做:
var link = $('a[name="content_'+params['p']+'"]'); // change the selector with encloses quote
link.click(function() {
// do something
});
然後通過觸發點擊事件:
link.click();
我假設你確實有綁定到匹配的鏈接點擊事件。如果是這樣的......
隨着屬性選擇,如果該值什麼事情比的字母序列更加複雜(例如包括下劃線或其他標點符號字符),其用引號包圍。
var link = $('a[name="content_'+params['p']+'"]');
確保您得到您的選擇元素嘗試調試它
$("[attributename='value']")
會告訴您正確的元素
你的選擇可能是不正確的。確保''a [name = content _'+ params ['p'] +']''的結果是指現有的元素。另外,調用'.click'只會執行事件處理程序,它不會讓瀏覽器跟隨該鏈接。 – 2012-08-13 11:18:10
@FelixKling僅僅因爲jQuery沒有專門在'a'元素上調用本地方法'.click()'的特殊條件。 http://jsfiddle.net/HB6X5/5/:P如果默認操作未被阻止並且目標元素具有本地方法,它會在其他類型的元素(原生.click()方法)上調用它。 – Esailija 2012-08-13 11:29:56
@Esailija:哈,學到了新東西:)非常感謝! – 2012-08-13 11:32:04