我正在创建一个动态表单生成器,可以在其中拖动、删除、重新排序表行等等。这大部分都是有效的,但当涉及到删除行时,我将如何创建一个数组或一组值,并将其发布回我用来更新数据库的php脚本。
我处理它的方法是创建一个分隔字符串并将其发布回来。
如何通过在每次用户单击按钮时附加如下值来动态创建字符串:23|?例如,如果用户单击按钮3次,则刺痛将为23|25|26|,然后当他们单击"保存"时,该值可以返回进行处理。
到目前为止,这是我为delete函数编写的代码,但它只是删除了表中的行,并没有实际生成字符串。
$(".reMove").live('click', function(e) {
$(this).parent().parent().remove();
var al = $(this).attr('rel');
$("#form1").find(".del").val(al);
e.preventDefault();
sortt();
});
我会使用一个数组:
var deletions = [];
// When deleting
deletions.push(value);
// When sending to your PHP script, create a string via Array#join
var deletionsString = deletions.join("|");
或者,如果你喜欢,你可以使用一个字符串并附加到它上:
var deletions = "";
// When deleting
deletions += "|" + value;
// When sending to your PHP script
if (deletions.length > 0) {
deletions = deletions.substring(1); // Skip the leading "|"
}
但我更喜欢阵列路由。
我可以看到你在这里有一个表单。你可以动态创建一个隐藏的输入:
var $input = $('<input/>')
.attr('type', 'hidden')
.attr.('name', 'del[]')
.val(al);
$("#form1").append($input);
将此表单摆回后,您可以简单地从$_POST['del']数组中删除所有记录。也许这就是你想要的解决方案?