這裏是我的代碼開始的一個片段:jQuery的多個ID選擇
var myUpload = $("#upload_link").upload({bla bla bla
基本上我想要做的就是用幾個不同的ID相同的呼叫......
我本來會認爲這會行得通,但它不會:
var myUpload = $("#upload_link,#upload_link2,#upload_link3").upload({
任何想法?
這裏是我的代碼開始的一個片段:jQuery的多個ID選擇
var myUpload = $("#upload_link").upload({bla bla bla
基本上我想要做的就是用幾個不同的ID相同的呼叫......
我本來會認爲這會行得通,但它不會:
var myUpload = $("#upload_link,#upload_link2,#upload_link3").upload({
任何想法?
試試這個:
$("#upload_link,#upload_link2,#upload_link3").each(function(){
$(this).upload({
//whateveryouwant
});
});
這個答案肯定會工作,但理想情況下,任何插件邏輯應該適用於所有匹配的元素。 – ShankarSangoli
如果給每個實例的類,你可以使用
$('.yourClass').upload()
它應該。通常這就是你如何做多選擇器。否則,它可能不會像你試圖將三個上傳的返回值分配給相同的變量。
我會建議使用.each
或者可能將返回推送到一個數組,而不是將它們分配給該值。
這應該可行,你可能需要一個逗號後的空格。
此外,您以後調用的函數必須支持一個對象數組,而不僅僅是一個單例對象。
您可以使用多個id
的方式,你寫道:
$('#upload_link, #upload_link2, #upload_link3')
然而,這並不意味着DOM中存在這些ID,當你執行你的代碼。這也並不意味着upload
是一個合法的功能。這也並不意味着upload
的構建方式允許選擇多個元素。
upload
是一個自定義的jQuery插件,所以你必須顯示upload
是怎麼回事,我們才能夠幫助你。
確保upload
插件實現了this.each
,以便它將執行所有匹配元素的邏輯。它應該理想地工作
$("#upload_link,#upload_link2,#upload_link3").upload(function(){ });
什麼是你使用的上傳插件?你確定它遵循推薦的插件開發模式嗎? – bfavaretto
它應該工作,必須是'upload'功能的東西。 http://jsfiddle.net/X7TAX/ – Kokos