Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/81.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 正在追加的当前元素_Javascript_Jquery_Html - Fatal编程技术网

Javascript 正在追加的当前元素

Javascript 正在追加的当前元素,javascript,jquery,html,Javascript,Jquery,Html,我想这么做真是疯了。 如何获得jQuery的append方法追加的当前元素? 我知道它会附加到集合中的每个元素,但是没有办法得到当前元素的迭代 假设我们有这个HTML <div class="parent" id="1"> <div class="list"></div> </div> <div class="parent" id="2"> <div class="list"></div> <

我想这么做真是疯了。 如何获得jQuery的append方法追加的当前元素? 我知道它会附加到集合中的每个元素,但是没有办法得到当前元素的迭代

假设我们有这个HTML

<div class="parent" id="1">
    <div class="list"></div>
</div>
<div class="parent" id="2">
    <div class="list"></div>
</div>
... more dynamically generated parents
但是它说
未定义
,因为
这个
是:

Window {speechSynthesis: SpeechSynthesis, caches: CacheStorage, localStorage: Storage, sessionStorage: Storage, webkitStorageInfo: DeprecatedStorageInfo…}
(我猜是文件)


有什么方法可以解决这个问题而不必切换到“foreach”循环?

迭代通过类名获得的每个元素,如
$('.list')
提供一个数组。对于迭代,可以使用
.each()
函数

$(函数(){
$(“.list”)。每个(函数(){
var id=$(this).closest('.parent').attr('id');
var html=''
$(this.append(html);
})
})

javascript

var max_fields      = 100; //maximum input boxes allowed
    var wrapper         = $("#input_fields_wrap"); //Fields wrapper
    var add_button      = $("#add_field_button"); //Add button ID

    var x = $(".counter").length; //initlal text box count
    $(add_button).on("click",function(){ //on add input button click
        //alert("masuk klikc")
        //e.preventDefault();
        if(x < max_fields){ //max input box allowed
            x++; //text box increment

            $(wrapper).append('<div class="counter"><div class="control-group "><label class="control-label" for="perluDilakukanTindakan">Tindakan Perbaikan Yang Perlu Dilakukan '+x+' :</label><div class="controls">'
                    +'<textarea name="perluDilakukanTindakan" cols="" rows="" id="perluDilakukanTindakan" style="margin-left: 20px; width: 350px;"></textarea></div>'
                    +'</div>'


                    +'<div class="control-group">'
                    +'<div class="controls">'
                    +'<label class="control-label">Label Detail '+x+' :</label>'
                    +'&nbsp;<input type="button" value="Delete Detail Perbaikan" class="remove_field btn btn-mini btn-danger" style="margin-top: 4px;">'
                    +'</div>'
                    +'</div>'


                    +'<div class="control-group "><label class="control-label" for="sDeadlinePerbaikan">Detail Att '+x+' :</label><div class="controls">'

                    +'<input type="text" name="stringDeadlinePerbaikan" id="sDeadlinePerbaikan'+x+'" value="" class="sDeadlinePerbaikan fieldShort"></div>'
                    +'</div></div>'); //add input box
        }

    });

    $(wrapper).on("click",".remove_field", function(e){ //user click on remove text
        e.preventDefault(); $(this).parent('div').parent('div').parent('div').remove(); x--;
    });
var max_字段=100//允许的最大输入框数
var wrapper=$(“#输入_字段_wrapp”)//字段包装器
var add_button=$(“#add_field_button”)//添加按钮ID
变量x=$(“.counter”).length//初始文本框计数
$(添加按钮)。在(“单击”上,函数(){//在添加输入按钮上单击
//警报(“masuk klikc”)
//e、 预防默认值();
如果(x
html


图Tindakan Perbaikan 1:

这是我已经实现的动态js,这个脚本将在最后一个元素中附加“html”。如果需要附加当前元素,只需将“html文本”修改为所选屏幕上的元素即可

$(“.list”)将返回一个数组,对它进行迭代,对于每个元素追加htmlyup,我不想做的一件事是切换到foreach循环尽管我不想切换到foreach/each循环,但这是最干净的方法。尽管如此,它不适用于我的特定用例,但它将作为我问题的答案,除非出现其他问题。我的逻辑有问题,使用它将导致每次添加新的“父级”时都重写每个输入。我得做这件事。
Window {speechSynthesis: SpeechSynthesis, caches: CacheStorage, localStorage: Storage, sessionStorage: Storage, webkitStorageInfo: DeprecatedStorageInfo…}
var max_fields      = 100; //maximum input boxes allowed
    var wrapper         = $("#input_fields_wrap"); //Fields wrapper
    var add_button      = $("#add_field_button"); //Add button ID

    var x = $(".counter").length; //initlal text box count
    $(add_button).on("click",function(){ //on add input button click
        //alert("masuk klikc")
        //e.preventDefault();
        if(x < max_fields){ //max input box allowed
            x++; //text box increment

            $(wrapper).append('<div class="counter"><div class="control-group "><label class="control-label" for="perluDilakukanTindakan">Tindakan Perbaikan Yang Perlu Dilakukan '+x+' :</label><div class="controls">'
                    +'<textarea name="perluDilakukanTindakan" cols="" rows="" id="perluDilakukanTindakan" style="margin-left: 20px; width: 350px;"></textarea></div>'
                    +'</div>'


                    +'<div class="control-group">'
                    +'<div class="controls">'
                    +'<label class="control-label">Label Detail '+x+' :</label>'
                    +'&nbsp;<input type="button" value="Delete Detail Perbaikan" class="remove_field btn btn-mini btn-danger" style="margin-top: 4px;">'
                    +'</div>'
                    +'</div>'


                    +'<div class="control-group "><label class="control-label" for="sDeadlinePerbaikan">Detail Att '+x+' :</label><div class="controls">'

                    +'<input type="text" name="stringDeadlinePerbaikan" id="sDeadlinePerbaikan'+x+'" value="" class="sDeadlinePerbaikan fieldShort"></div>'
                    +'</div></div>'); //add input box
        }

    });

    $(wrapper).on("click",".remove_field", function(e){ //user click on remove text
        e.preventDefault(); $(this).parent('div').parent('div').parent('div').remove(); x--;
    });
<div id="input_fields_wrap">
                <div class="counter">
                    <input type="textarea" name="perluDilakukanTindakan" id="perluDilakukanTindakan" label="Tindakan Perbaikan Yang Perlu Dilakukan 1 " labelSeparator=":" cssStyle="margin-left: 20px; width: 350px;" /> 

                    <div class="control-group">
                        <div class="controls">
                            <label class="control-label">PIC Tindakan Perbaikan 1 :</label>
                            <input type="text" cssClass="textFieldBranchCode"
                                id="picTindakanPerbaikan" name="picTindakanPerbaikan"
                                cssStyle="margin-left:20px;" labelposition="left"
                                labelSeparator="" theme="simple"  readonly="true"/>

                            <input type="text" id="namaLengkapTindakanPerbaikan"
                                name="namaLengkapTindakanPerbaikan" label=""
                                labelposition="left" labelSeparator="" theme="simple"
                                readonly="true" cssStyle="margin-left:0px;" />

                        <input type="button" value="Add Detail Perbaikan " id="add_field_button" class="btn btn-mini btn-success" style="margin-top: 4px;"/>
                        </div>
                    </div>


                    <input type="text" name="stringDeadlinePerbaikan" id="stringDeadlinePerbaikan" label="Label detail 1 " labelSeparator=":" cssClass="sDeadlinePerbaikan fieldShort" />
                </div>
            </div>