下面是我的代码开始的一个片段:
var myUpload = $("#upload_link").upload({bla bla bla
基本上我要做的就是用几个不同的身份打同样的电话。
我本以为这会奏效,但事实并非如此:
var myUpload = $("#upload_link,#upload_link2,#upload_link3").upload({
有什么想法吗?
如果给每个实例一个可以使用的类
$('.yourClass').upload()
试试这个:
$("#upload_link,#upload_link2,#upload_link3").each(function(){ $(this).upload({ //whateveryouwant }); });
应该的。通常这就是你如何做多个选择器。否则,它可能不希望您尝试将三个上传的返回值分配给同一个 var。
我建议使用 .each或者将返回值推送到一个数组中,而不是将它们赋给该值。
.each
应该可以,你可能需要在逗号后面加个空格。
而且,之后调用的函数必须支持一个对象数组,而不仅仅是一个单例对象。
你的 可以使用多个 id的方式,你写:
id
$('#upload_link, #upload_link2, #upload_link3')
但是,当您执行代码时,这并不意味着这些 id 存在于 DOM 中。这也不意味着 upload是一个合法的函数。这也并不意味着 upload的构建方式允许在一个选择中包含多个元素。
upload
upload是一个自定义的 jQuery 插件,所以你必须展示 upload是怎么回事,我们才能帮助你。
确保 upload插件在其中实现了 this.each,以便它将执行所有匹配元素的逻辑。最好能成功
this.each
$("#upload_link,#upload_link2,#upload_link3").upload(function(){ });
如果以 upload_开头的所有元素在其 id中都具有相同的用途或语法,那么可以尝试使用以下内容:
upload_
$("*[id^='upload_']").each(function() { $(this).upload() });
这样,您就不必指定选择器中的每一个元素。