Jquery Draggable Sortable 写入正确的输入,获取子元素不起作用

问题描述 投票:0回答:3
jquery draggable jquery-ui-sortable children input-field
3个回答
2
投票

代替

var inputs = draggingElement.getElementsByTagName("input");
inputs[0].attr('name',string1);
inputs[1].attr('name',string2);

试试这个

var inputs = draggingElement.find("input");
inputs.eq(0).attr('name',string1);
inputs.eq(1).attr('name',string2);

1
投票

我认为

getElementsByTagName
将为您提供 HTML 元素对象,而您需要 jQuery 元素对象 - 以便使用
attr
方法。

检查 jQuery 手册以获得返回 jQuery 元素数组的正确方法,然后像您所做的那样使用数组访问方法,或者对它们运行

each
迭代器。


0
投票

(代表问题作者将答案移至答案空间。)

这是满足我需要的脚本,感谢您的回答。

$( sort );
function sort() {
    $('.drag1').sortable({
    update: function(event,ui) {
        var draggingElement = $('.editimg');
        draggingElement.each(function() {
            var ordering = $(this).index();
            var string1 = 'fotos['+ordering+'].name';
            var string2 = 'fotos['+ordering+'].titel';
            var inputs = $(this).find("input");
            inputs.eq(0).attr('name',string1);
            inputs.eq(1).attr('name',string2);
       });
     }
    });
};
© www.soinside.com 2019 - 2024. All rights reserved.