如何使用Jquery动态创建分隔字符串



我正在创建一个动态表单生成器,可以在其中拖动、删除、重新排序表行等等。这大部分都是有效的,但当涉及到删除行时,我将如何创建一个数组或一组值,并将其发布回我用来更新数据库的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']数组中删除所有记录。也许这就是你想要的解决方案?

最新更新