Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在jQuery多文件插件中动态创建输入文件元素_Javascript_Jquery_Html_Onchange_Multifile - Fatal编程技术网

Javascript 在jQuery多文件插件中动态创建输入文件元素

Javascript 在jQuery多文件插件中动态创建输入文件元素,javascript,jquery,html,onchange,multifile,Javascript,Jquery,Html,Onchange,Multifile,我使用的是jQuery多文件插件,这是该插件的普通视图 这是此文件的HTML语法 <input type="file" id="someName" name="file" class="multi" onchange="return Plugins.handleFileSelect(this);"/> 我正在尝试动态生成此文件输入 所以我试着在“点击这里”按钮点击发生时附加这个 <button type="button" id="ifile">click her

我使用的是jQuery多文件插件,这是该插件的普通视图

这是此文件的HTML语法

<input type="file" id="someName" name="file" class="multi" onchange="return Plugins.handleFileSelect(this);"/>

我正在尝试动态生成此文件输入

所以我试着在“点击这里”按钮点击发生时附加这个

 <button type="button" id="ifile">click here</button>             
 <div id="target_div"></div> 

<script type="text/javascript">

    $('#ifile').click(function () {
        // when the add file button is clicked append
        // a new <input type="file" name="someName" />
        // to a target_div div
        $('#target_div').append(
            $('<input/>').attr('type', "file").attr('name', "file").attr('id', "someName").attr('class', "multi").attr('onchange', "return Plugins.handleFileSelect(this);")
        );
    });
</script>
点击这里
$('#ifile')。单击(函数(){
//单击“添加文件”按钮时,追加
//新的
//到一个目标
$('#target_div')。追加(
$('').attr('type','file').attr('name','file').attr('id','someName').attr('class','multi').attr('onchange','return Plugins.handleFileSelect(this);'))
);
});
但一旦我这样做了,它就会生成普通的文件输入,但不会正确地列出文件

打开inspect elements后,我可以看到如下视图


我怎样才能正确地生成这个

您可以像这样使用append

$('#target_div').append('<input type="file" id="someName" name="file" class="multi" onchange="return Plugins.handleFileSelect(this);"/>')
$('#target_div')。追加('')
顺便说一句,您可以查看jquery文档中的append


您可以像这样使用append

$('#target_div').append('<input type="file" id="someName" name="file" class="multi" onchange="return Plugins.handleFileSelect(this);"/>')
$('#target_div')。追加('')
顺便说一句,您可以查看jquery文档中的append


您应该改用多文件插件

$('#ifile').click(function () {
    // when the add file button is clicked append
    // a new <input type="file" name="someName" />
    // to a target_div div
    var input = $('<input/>')
                .attr('type', "file")
                .attr('name', "file")
                .attr('id', "someName");
    //append the created file input
    $('#target_div').append(input);
    //initializing Multifile on the input element
    input.MultiFile();
});
$('ifile')。单击(函数(){
//单击“添加文件”按钮时,追加
//新的
//到一个目标
变量输入=$('')
.attr(“类型”,“文件”)
.attr(“名称”,“文件”)
.attr('id','someName');
//附加创建的文件输入
$('#target_div')。追加(输入);
//正在初始化输入元素上的多文件
input.MultiFile();
});

您应该改用多文件插件

$('#ifile').click(function () {
    // when the add file button is clicked append
    // a new <input type="file" name="someName" />
    // to a target_div div
    var input = $('<input/>')
                .attr('type', "file")
                .attr('name', "file")
                .attr('id', "someName");
    //append the created file input
    $('#target_div').append(input);
    //initializing Multifile on the input element
    input.MultiFile();
});
$('ifile')。单击(函数(){
//单击“添加文件”按钮时,追加
//新的
//到一个目标
变量输入=$('')
.attr(“类型”,“文件”)
.attr(“名称”,“文件”)
.attr('id','someName');
//附加创建的文件输入
$('#target_div')。追加(输入);
//正在初始化输入元素上的多文件
input.MultiFile();
});

您的答案非常准确,我希望您也能回答隐藏“以上多文件输入中无文件选择文本”和缩短jQuery多文件中冗长标签名称的问题您的答案非常准确,我希望您也能回答隐藏“以上多文件输入中无文件选择文本”的问题我还有一个问题,就是缩短jQuery多文件中冗长的标签名