Php 使用按钮单击功能更改复选框输入名称

Php 使用按钮单击功能更改复选框输入名称,php,javascript,Php,Javascript,单击按钮时更改输入元素上的name属性时遇到问题 我有3个按钮: *添加租客 *删除客户 *更新客户 这是输入元素: $busRow是用户的id 表单被提交到一个php脚本,该脚本检查设置了什么按钮,并对该按钮执行不同的操作。当用户单击“删除”按钮时,它会循环并删除todelete[]数组中的每个客户。当用户单击更新客户按钮时,我想将复选框输入的名称更改为“id”。然后,我的php脚本将获取用户的id,而不是获取数组值,然后将用户重定向到更新客户页面,并将id存储在URL上 这是我在页面底部使

单击按钮时更改输入元素上的name属性时遇到问题

我有3个按钮:
*添加租客
*删除客户
*更新客户

这是输入元素:

$busRow是用户的id

表单被提交到一个php脚本,该脚本检查设置了什么按钮,并对该按钮执行不同的操作。当用户单击“删除”按钮时,它会循环并删除
todelete[]
数组中的每个客户。当用户单击更新客户按钮时,我想将复选框输入的名称更改为“id”。然后,我的php脚本将获取用户的id,而不是获取数组值,然后将用户重定向到更新客户页面,并将id存储在URL上

这是我在页面底部使用的javascript:

<script type="text/javascript">
    $("button").click(function () {
        if ($(this).text() == "Update Customer") {
            $('input.check').attr("name", "id");
        }
    });
</script>

$(“按钮”)。单击(函数(){
if($(this).text()=“更新客户”){
$('input.check').attr(“名称”、“id”);
}
});

当我进入Update Customer页面时,URL中没有id,我无法根据id提取任何值:(

尝试在if语句中添加一个警报,以检查这是否真的变为真,以缩小可能的原因

此外,我还从未见过input.check用作选择器。也许给按钮一个id,使其:

<input id=\"customercheck\" type=\"checkbox\" name=\"todelete[]\" value=\"$busRow[0]\" class=\"check\" />

如果以后向字段添加另一个输入,也可以节省您的时间。

您将名称值设置为“id”,而不是存储在
值中的值。
。尝试以下操作:

$("button").click(function () {

    if ($(this).text() == "Update Customer") {
        var element = $('input.check');
        element.attr("name", element.attr("value"));
    }
 });
尽管如此,我认为当btn单击为“更新”时,您可以只传递输入标记的
,而不是
名称
。这样可以省去更改这些不同属性的麻烦,也可以省去您的麻烦

编辑:我正在再次阅读OP,看到您想将名称att设置为“id”,而不是用户id???您的问题很模糊,很难理解您想做什么。您忽略了获取此“id”并重定向用户的关键代码


Edit2:字符串concat之间的分号是怎么回事?我希望这不在源代码中。现在查看重定向代码。我认为您的问题在于尝试使用“input.check”选择器更改标记的属性/值。我还想说您应该重新设计实现方法。您的复选框不应保存您的用户信息。但无论如何,我认为您甚至不需要更改
名称
值。如果
更新
isset(),则只需将
$id=(其当前名称值)设置为

下载firebug来调试javascript代码。firebug还会显示代码中的错误,这些错误在其他情况下是看不到的。这应该会对您有很大帮助的

您能提供重定向代码吗?我同意,输入标签需要一个ID来让生活更轻松为什么您使用scape'\'字符?我只使用转义,因为OP使用了转义(我想他是从PHP echo语句中复制出来的)。如果您只是将代码添加到HTML页面中,那么这是不必要的。我尝试了这个方法,但它仍然没有在我的PHP脚本中获取id。
$("button").click(function () {

    if ($(this).text() == "Update Customer") {
        var element = $('input.check');
        element.attr("name", element.attr("value"));
    }
 });