Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/365.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/JS向上/向下切换DIV元素_Javascript_Jquery_Html - Fatal编程技术网

Javascript 使用jQuery/JS向上/向下切换DIV元素

Javascript 使用jQuery/JS向上/向下切换DIV元素,javascript,jquery,html,Javascript,Jquery,Html,我正在尝试向上或向下移动动态窗体的div元素: 这是我的表格: <form name="f_form"> Order name <input type="text" name="ord" id="order" /> <div id="fields"> <div id="hid1"><a href="#" id="did1"> <img src="d.jpg" /></a>&l

我正在尝试向上或向下移动动态窗体的div元素:

这是我的表格:

  <form name="f_form">
        Order name <input type="text" name="ord" id="order" />

        <div id="fields">
<div id="hid1"><a href="#" id="did1">
<img src="d.jpg" /></a><a href="#" id="uid1">
<img src="u.jpg" /></a><input type="text" name="p_name[]" id="names" />
<input type="text" name="quant[]" id="quant" size="3" />
<input type="text" name="pr[]" id="price" size="10" />
<input type="text" name="sum_a" id="sum" size="10" disabled="disabled"/>
        </div>
<input type="button" name="nauj" id="nau" value="Add item"/><br />
    </div>
    </form>

感谢您的建议。

首先,您没有正确使用()上的
-事件处理程序没有像您预期的那样绑定。正确的语法是:

// "watch for" elements matching selector "a[id^='did']" created inside #fields
$("#fields").on('click', "a[id^='did']", function(e) {...})
其次,您正试图在添加当前元素的div之后/之前对id属性进行操作,以解除挖掘。这很混乱,一种更干净的方法是使用
.next()
.prev()
来确定与单击的节点相关的下一个或上一个节点是什么

我制作了一把小提琴作为例子:


作为旁注:您的代码很混乱,我并没有采取行动,因为它超出了您的问题范围。无意冒犯:)

使用与@WTK相同的解决方案,使用
.prev()
,但方法不同。哦,我忍不住做了些清理;)

$("a[id^='uid']").on('click', function() {
            var numrow = $(this).attr("id");
            numrow = numrow.substr(3);
            var nr = 1;

            sumrow = numrow - nr;
            var eil = 'id=' + numrow;
            numrowas = "#hid"+numrow;
            srowas = "#hid"+sumrow;
                    $(numrowas).before($(srowas));
        });
// "watch for" elements matching selector "a[id^='did']" created inside #fields
$("#fields").on('click', "a[id^='did']", function(e) {...})