1
我使用jQuery插件Uploadify将视频上传到我的服务器。一旦页面加载,它会发现一个特定的类名称的所有文件输入元素,并调用它实例的Uploadify功能的函数:应用Uploadify新的DOM元素
$(document).ready(function(){
$(".video_upload").each(function(){
var t = $(this);
var f = $("#"+i).siblings(".show_file");
f.hide();
setupUpload(t,f);
});
});
function setupUpload(t,f){
t.uploadify({
'uploader' : '<?=site_url('../assets/js/uploadify/uploadify.swf');?>',
'script' : '<?=site_url('utility/send_vid');?>',
'cancelImg' : '<?=site_url('../assets/js/uploadify/cancel.png');?>',
'folder' : '/uploads/',
'auto' : true,
'onComplete' : function(event, ID, fileObj, response, data) {
var r = $.parseJSON(response);
if(r.error){
$("#"+i).siblings(".error").html(r.reason).show();
}else{
$("#"+i).siblings("#video_href").val(r.src);
setTimeout(function(){
f.children('.file_name').text(r.nice_name);
f.show();
},1000);
}
}
});
}
这一切都完美。我想现在要做的是当用户点击一个特定的按钮时,在页面中插入一个新的文件输入元素。所以他们点击按钮,插入一个新的文件输入元素,需要通过Uploadify抓取并像其他输入一样转换。
新元素插入后,我尝试并调用setupUpload()
功能,但它不能正常工作。这种函数仅在页面加载时才起作用,还是可以在任何时候调用它?
编辑:
暂时,我打电话与下列参数setupUpload()函数:
var t = $("#ind_video_2");
var f = t.siblings(".show_file");
setupUpload(t,f);
的ID是新元素的ID,但我只是用它作为一个临时的选择,直到我知道了整个事情的作品,并会使用更多的东西动态...
当你调用创建输入元素之后'setupUpload'方法做传递什么参数? – ShankarSangoli 2012-02-04 20:37:07
@ShankarSangoli我编辑的问题,增加了有关在哪里'i'代码中的'$内声明的参数 – hohner 2012-02-04 20:42:52
一些更多的信息(“video_upload”)。每个()'? – ShankarSangoli 2012-02-04 20:48:29