在php中我有以下
的数组$var=array();
$var[0][0][num]='1';
$var[0][0][text]='2';
$var[0][1][num]='3';
$var[0][1][text]='4';
$var[1][0][num]='5';
$var[1][0][text]='6';
$var[1][1][num]='7';
$var[1][1][text]='8';
我需要上下移动变量对[text]
和[num]
,并将新对添加到数组的末尾。
在服务器端执行它很简单,但我想在客户端允许这些操作。
所以,它应该如下所示
<form>
<div>
<input name="var[0][0][num]" value="1">
<input name="var[0][0][text]" value="2">
<input name="var[0][1][num]" value="3">
<input name="var[0][1][text]" value="4">
</div>
<div>
<input name="var[1][0][num]" value="5">
<input name="var[1][0][text]" value="6">
<input name="var[1][1][num]" value="7">
<input name="var[1][1][text]" value="8">
</div>
</form>
所以,现在我需要将任何这些div复制到表单的末尾并上下移动这些div并保留它们的值。
例如,我可以复制上部div并将其附加到form
:
onlick="this.parentNode.appendChild(this.cloneNode(true))"
之后的形式如下:
<form>
<div onlick="this.parentNode.appendChild(this.cloneNode(true))">
<input name="var[0][0][num]" value="1">
<input name="var[0][0][text]" value="2">
<input name="var[0][1][num]" value="3">
<input name="var[0][1][text]" value="4">
</div>
<div>
<input name="var[1][0][num]" value="5">
<input name="var[1][0][text]" value="6">
<input name="var[1][1][num]" value="7">
<input name="var[1][1][text]" value="8">
</div>
<div onlick="this.parentNode.appendChild(this.cloneNode(true))">
<input name="var[0][0][num]" value="1">
<input name="var[0][0][text]" value="2">
<input name="var[0][1][num]" value="3">
<input name="var[0][1][text]" value="4">
</div>
</form>
我无法弄清楚,如何更改复制的div输入的名称。例如,复制和附加的div应为
<div onlick="this.parentNode.appendChild(this.cloneNode(true))">
<input name="var[2][0][num]" value="1">
<input name="var[2][0][text]" value="2">
<input name="var[2][1][num]" value="3">
<input name="var[2][1][text]" value="4">
</div>
或者,当我将上部div移动到低于div时,它们应该重命名并且看起来像
<div>
<input name="var[0][0][num]" value="5">
<input name="var[0][0][text]" value="6">
<input name="var[0][1][num]" value="7">
<input name="var[0][1][text]" value="8">
</div>
<div>
<input name="var[1][0][num]" value="1">
<input name="var[1][0][text]" value="2">
<input name="var[1][1][num]" value="3">
<input name="var[1][1][text]" value="4">
</div>
好的,我知道这个问题很复杂,可能看起来很愚蠢,所以我只需要猜一下=)
答案 0 :(得分:1)
你还没有在你的标签中提到jQuery,但这就是我要看的。特别是,jQueryUI库,它运行在jQuery之上。
jQuery是一个javascript库,比经典的javascript更有效(更少打字,用更少的代码做更多)。
请参阅jQueryUI可排序窗口小部件here。
对于jQuery教程:Alex Garret's jQuery tutorials at the thenewboston.com
Alex Garret's website还有更多教程。