简体   繁体   English

使用jQuery优化在HTML中追加元素的方法

[英]Optimize way to append element in html using jquery

What is the optimize way to append this element to my specific DIV Class using JQUERY. 使用JQUERY将此元素附加到我的特定DIV Class的优化方法是什么。 This will generate dynamic elements. 这将生成动态元素。 I use .AppendTo then display dynamically the element inside <div class='parent-list-workorder'> . 我使用.AppendTo然后动态显示<div class='parent-list-workorder'>

Here's my code so far but it doesn't work: 到目前为止,这是我的代码,但是无法正常工作:

$(document).ready(function(){

    var ListOfWorkOrders = [];

    $("#button").click(function(){

        //var _WOID = $('.list-workorder-id').text();

        var _WOID = $('#txtWOID').val();

        //alert(_WOID);

        $.ajax({
          url:'getWorkOrders.php',
          type:'POST',
          data:{id:_WOID},
          dataType:'json',
          success:function(output){


            for (var key in output) {

                if (output.hasOwnProperty(key)) {

                    $("<div class='child-list-workorder'>

                        <div class='list-workorder'>

                            <div class='list-workorder-header'>

                                <h3 class='list-workorder-id'>" + output[key] + "</h3>

                            </div>

                            <p>" + Sample + ":" + key + "</p>

                        </div>

                    </div>").appendTo("<div class='parent-list-workorder'>");

                    //alert(output[key]);

                }
            }

            console.log(output);              

          }

        });

    });

});

Am I missing something? 我想念什么吗?

Your problem is in the code below: 您的问题在以下代码中:

.appendTo("<div class='parent-list-workorder'>");

The parameter of appendTo() should also be a valid selector. appendTo()的参数也应该是有效的选择器。

you can try this instead: 您可以尝试以下方法:

.appendTo("div.parent-list-workorder");

granting that div.parent-list-workorder already exists. 授予div.parent-list-workorder已经存在。

You have two problems. 你有两个问题。 First, you need to use a selector as an argument to .appendTo() , not an HTML string. 首先,您需要使用选择器作为.appendTo()的参数,而不是HTML字符串。 Second, you need to remove or escape the newlines in the HTML string. 其次,您需要删除或转义HTML字符串中的换行符。

$("<div class='child-list-workorder'>\
     <div class='list-workorder'>\
       <div class='list-workorder-header'>\
         <h3 class='list-workorder-id'>" + output[key] + "</h3>\
       </div>\
       <p>" + Sample + ":" + key + "</p>\
    </div>\
 </div>").appendTo("div.parent-list-workorder");

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM