通过JQuery将内容添加到特定的HTML标签

东阮

我想将输入字段和图像标签添加到特定的

这就是我所做的

<button onclick="add_field()" class="btn btn-primary">ADD MORE IMAGES</button>
<form id="mainform" enctype="multipart/form-data">
<div class="row">
// it should goes here. However, it always out of <div> tag
</div>
</form>
<script>
    function add_field() {
        var x = document.getElementById("mainform");
        // create an input field to insert
        var new_field = document.createElement("input");

        var pos = x.childElementCount;

        // set input field data type to text
        new_field.setAttribute("type", "file");
        new_field.setAttribute("name", "filename[]");
        new_field.setAttribute("accept", "image/*");
        new_field.setAttribute("class", "form-control col-2");
        new_field.setAttribute("id", 'img'+pos)

        var preview = document.createElement("img");
        preview.setAttribute("src", "#");
        preview.setAttribute("id", 'preview-img'+pos);
        preview.setAttribute("height", "250px");
        preview.setAttribute("width", "250px");

        // insert element
        x.insertBefore(new_field, x.childNodes[27]);
        x.insertBefore(preview, x.childNodes[28]);

        $("form#mainform input[type='file']").change(function(){
            readURL(this);
        });
    }

    function readURL(input) {
        if (input.files && input.files[0]) {
            var reader = new FileReader();

            reader.onload = function (e) {
                imgId = '#preview-'+$(input).attr('id');
                $(imgId).attr('src', e.target.result);
            }

            reader.readAsDataURL(input.files[0]);
        }
    }
<script>

我想在同一行中输入字段和图像标签,但它不起作用。原因来自x.insertBefore()我不知道应该是什么。请帮助我检查并解决此问题。谢谢!

穆罕默德·优素福

在使用jquery时,可以使用$(x).find('.row').prepend(new_field);要添加到顶部的内容还是$(x).find('.row').append(new_field);要添加到底部的内容

我不喜欢将纯javascript与jquery混合使用。所以这是您代码的jquery版本

.row > div{
  margin : 20px;
  padding : 20px;
  background : #eee;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<button onclick="add_field()" class="btn btn-primary">ADD MORE IMAGES</button>
<form id="mainform" enctype="multipart/form-data">
<div class="row">

</div>
</form>
<script>
    function add_field() {
        var x = $("#mainform");
        var row_div = $("#mainform .row");
        var count = $("#mainform .row div").length; // get divs count
        
        // create an input field to insert
        var new_field = "<input type='file' name='filename[]' accept='image/*' class='form-control col-2' id='img"+count+"'/>"
        
        // preview
        var preview = "<img src='#' id='preview-img"+count+"' height='250px' width='250px'>";

        // insert element
        row_div.prepend('<div>'+ preview + new_field +'</div>');

        $("form#mainform input[type='file']").change(function(){
            readURL(this);
        });
    }

    function readURL(input) {
        if (input.files && input.files[0]) {
            var reader = new FileReader();

            reader.onload = function (e) {
                imgId = '#preview-'+$(input).attr('id');
                $(imgId).attr('src', e.target.result);
            }

            reader.readAsDataURL(input.files[0]);
        }
    }
</script>

注意:.prepend('<div>'+ preview + new_field +'</div>');这里我创建了一个div来同时保存输入和预览

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用jQuery将HTML标签添加到表中

来自分类Dev

将HTML内容添加到jQuery参数

来自分类Dev

通过jquery将文本添加到<textarea>而不是添加到HTML

来自分类Dev

自动将标签添加到HTML

来自分类Dev

将HTML标签添加到Highcharts

来自分类Dev

动态地将内容添加到标签页

来自分类Dev

如何通过jQuery将excel属性添加到样式标签?

来自分类Dev

如何通过jQuery将跨度标签中的文本添加到数据属性中?

来自分类Dev

如何通过Chrome扩展程序动态将HTML文件的内容添加到页面?

来自分类Dev

通过REGEX将HTML添加到单元格内容

来自分类Dev

将jQuery添加到HTML问题

来自分类Dev

如何将attr(id)添加到特定值的<text>标签-Js / Jquery

来自分类Dev

将html添加到特定字符之前的所有内容

来自分类Dev

通过C ++将脚本标签添加到Internet Explorer

来自分类Dev

通过API将标签添加到tumblr帖子

来自分类Dev

通过C ++将脚本标签添加到Internet Explorer

来自分类Dev

如何通过REST将标签添加到Confluence页面

来自分类Dev

在特定元素之后将新标签添加到<div>?

来自分类Dev

jQuery click()将href添加到标签

来自分类Dev

将Jquery / JS添加到输入和标签

来自分类Dev

将图标添加到html i标签

来自分类Dev

将HTML代码添加到body标签的Javascript代码

来自分类Dev

将图标添加到html i标签

来自分类Dev

将标签添加到“ HTML范围”滑块的末尾

来自分类Dev

Javascript html将onclick添加到标签元素

来自分类Dev

将动画添加到jQuery内容选项卡

来自分类Dev

通过JQuery AJAX调用将<tr>逐步添加到HTML表(Django框架)

来自分类Dev

通过.Net和jQuery中的哈希将类添加到HTML

来自分类Dev

使用Powershell将内容添加到HTML文件的顶部

Related 相关文章

热门标签

归档