Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/426.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/85.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_Css_Clone - Fatal编程技术网

Javascript jQuery。无法识别克隆的元素

Javascript jQuery。无法识别克隆的元素,javascript,jquery,html,css,clone,Javascript,Jquery,Html,Css,Clone,我正在用jQuery.clonetrue克隆一些div,并将克隆的元素作为最后一个插入,但是,当我尝试对这个元素使用selector:last时,它不起作用。控制台不显示任何错误。 以下是我如何克隆元素: $("div.addnewitem").on('click', function () { var $d = $("#example").clone(true); $($d).removeAttr("sty

我正在用jQuery.clonetrue克隆一些div,并将克隆的元素作为最后一个插入,但是,当我尝试对这个元素使用selector:last时,它不起作用。控制台不显示任何错误。 以下是我如何克隆元素:

            $("div.addnewitem").on('click', function () {
                var $d = $("#example").clone(true);
                $($d).removeAttr("style");
                $($d).insertAfter("div.item:last");
                $('html, body').animate({
                    scrollTop: $("div.item:last").offset().top
                }, 2000);
            });
这是要克隆的元素:

<div id="example" style="display: none;" class="item">
        <div class="deleteitem">
            <img alt="" src="../img/deleteitem.png">
        </div>
        <div class="itemphoto">
            <img alt="" src="../img/woolrich.png">
        </div>
        <div class="bigshadow">
            <img alt="" src="../img/bigshadow.png">
        </div>
        <div class="about">
            <input type="text" class="link" placeholder="Ссылка на изображение" name="item_image" />
            <input type="text" class="name" placeholder="Вещь и бренд..." name="item_name">
            <textarea class="review" placeholder="Короткое описание (около 120 символов)..." name="item_desc"></textarea>
            <input type="text" class="link" placeholder="Ссылка на вещь..." name="item_url">
            <input type="text" class="pricestylist" placeholder="Цена (xxx руб/$)" name="item_price">
        </div>
    </div>

附带说明:克隆功能工作正常-我可以克隆和删除克隆的元素,但原因是:上次不工作我不知道。

好吧,这是为我工作的解决方案

$("div.item").on('change', 'input[name="item_url"]', function (event) {
                if ($("#setname").val() != "") {
                    if ($(this).val() != null) {
                        $.ajax({
                            url: '../ParseShop.asmx/ParseFott',
                            cache: false,
                            type: 'POST',
                            dataType: 'json',
                            contentType: 'application/json; charset=utf-8',
                            data: "{'urlstring':'" + $("input[name='item_url']:last").val() + "'}",
                            success: function (msg) {
                                $("div.item:last textarea[name='item_desc']").val($.trim(msg.d.ItemDescription));
                                $("div.item:last input[name='item_name']").val($.trim(msg.d.ItemName));
                                $("div.item:last input[name='item_price']").val($.trim(msg.d.ItemPrice));
                                $("div.item:last input[name='item_image']").val($.trim(msg.d.ItemImageUrl));
                                $("div.item:last img[id='itemimg']").attr('src', $.trim(msg.d.ItemImageUrl));
                            },
                            error: function (xhr, status, error) {
                                var err = eval("(" + xhr.responseText + ")");
                                alert(err.Message);
                            }
                        });
                    }
                    else {
                        alert("Вы забыли ввести ссылку на товар!");
                        $("input[name='item_url']:last").focus();
                        event.preventDefault();
                    }
                }
                else {
                    alert("Вы забыли название комплекта!");
                    $("#setname").focus();
                    event.preventDefault();
                }
            });

p.S.基于Brian的回答。布莱恩,你可以添加你的评论作为答案。

你应该更具体地说明你在谈论什么。你正在使用:最后一个在整个地方。它们都不管用吗?一些哪一个?你不工作是什么意思?对不起,这对我来说太清楚了。这里不起作用:$input[name='item_url']:last.changefunction事件{}。所有原始元素和克隆元素都有相同的“name”属性,所以我使用它作为选择器。不工作是什么意思?:last在那里几乎没有任何用处,因为该元素是其父元素中唯一具有该名称的元素。也许您的意思是执行类似$div的操作。item:last input[name='item_url'];不幸的是,还有别的事情。
$("div.item").on('change', 'input[name="item_url"]', function (event) {
                if ($("#setname").val() != "") {
                    if ($(this).val() != null) {
                        $.ajax({
                            url: '../ParseShop.asmx/ParseFott',
                            cache: false,
                            type: 'POST',
                            dataType: 'json',
                            contentType: 'application/json; charset=utf-8',
                            data: "{'urlstring':'" + $("input[name='item_url']:last").val() + "'}",
                            success: function (msg) {
                                $("div.item:last textarea[name='item_desc']").val($.trim(msg.d.ItemDescription));
                                $("div.item:last input[name='item_name']").val($.trim(msg.d.ItemName));
                                $("div.item:last input[name='item_price']").val($.trim(msg.d.ItemPrice));
                                $("div.item:last input[name='item_image']").val($.trim(msg.d.ItemImageUrl));
                                $("div.item:last img[id='itemimg']").attr('src', $.trim(msg.d.ItemImageUrl));
                            },
                            error: function (xhr, status, error) {
                                var err = eval("(" + xhr.responseText + ")");
                                alert(err.Message);
                            }
                        });
                    }
                    else {
                        alert("Вы забыли ввести ссылку на товар!");
                        $("input[name='item_url']:last").focus();
                        event.preventDefault();
                    }
                }
                else {
                    alert("Вы забыли название комплекта!");
                    $("#setname").focus();
                    event.preventDefault();
                }
            });