Ответ 1
Попробуйте следующее:
$("#upload_link,#upload_link2,#upload_link3").each(function(){
$(this).upload({
//whateveryouwant
});
});
Вот фрагмент начала моего кода:
var myUpload = $("#upload_link").upload({bla bla bla
В основном то, что я пытаюсь сделать, это сделать тот же вызов с несколькими разными идентификаторами...
Я бы предположил, что это сработает, но это не так:
var myUpload = $("#upload_link,#upload_link2,#upload_link3").upload({
Любые идеи?
Попробуйте следующее:
$("#upload_link,#upload_link2,#upload_link3").each(function(){
$(this).upload({
//whateveryouwant
});
});
Если вы дадите каждому из этих экземпляров класс, который вы можете использовать
$('.yourClass').upload()
Вы можете использовать несколько id
способ, которым вы написали:
$('#upload_link, #upload_link2, #upload_link3')
Однако это не означает, что эти идентификаторы существуют в DOM при выполнении кода. Это также не означает, что upload
является законной функцией. Это также не означает, что upload
был построен таким образом, что позволяет использовать несколько элементов в выделенном фрагменте.
upload
- это настраиваемый плагин jQuery, поэтому вам нужно будет показать, что происходит с upload
, чтобы мы могли вам помочь.
Убедитесь, что плагин upload
реализует this.each
в нем, чтобы он выполнял логику для всех соответствующих элементов. Он должен идеально работать
$("#upload_link,#upload_link2,#upload_link3").upload(function(){ });
он должен. Как правило, как вы делаете несколько селекторов. В противном случае может не понравиться, что вы пытаетесь присвоить возвращаемые значения трех загрузок одному и тому же var.
Я бы предложил использовать .each
или, возможно, нажать на возврат в массив, а не назначать их этому значению.
Это должно работать, вам может понадобиться пробел после запятой.
Кроме того, функция, которую вы вызываете впоследствии, должна поддерживать массив объектов, а не только одноэлементный объект.