如何使用Jquery重命名html表单元素的Id属性?

时间:2014-05-07 07:43:16

标签: javascript jquery html

我有一个包含收音机的表格。

 <input type="radio" name="categoryid" id="category420" value="420" onclick="checkCategory();" > Category1
 <input type="radio" name="categoryid" id="category1314" value="13,14" onclick="checkCategory();" >Category2
 <input type="radio" name="categoryid" id="category594" value="594" onclick="checkCategory();" >Category3

当radio元素值属性是逗号分隔列表(13,14)时,我需要更改元素Id属性。

在上面的示例中,当选择第二个类别时,应将“CategoryIDs = 13,14”传递给操作页面而不是categoryid。但对于其他两个类别,它应该通过categoryid值。

我无法编辑操作页面。

问题:如何更改JQuery中的单选按钮Id属性?

1 个答案:

答案 0 :(得分:1)

更改ID

根据您的要求只有一个Id(categoryid / s),您可以在提交表单之前使用JQuery更改Id。

JSFiddle工作示例 - http://jsfiddle.net/daTYY/

<强> JQuery的

$(function() {
    $('input:radio[name=categoryid]').change(function() {
        if ($(this).val().indexOf(",") >= 0) {
            $(this).attr("id","newId");
        }
    });
});

更新隐藏的输入

添加名为categoryids的隐藏输入。然后使用JQuery检查categoryid是否包含逗号,以及是否使用值填充categoryids。

JSFiddle工作示例 - http://jsfiddle.net/KVs79/

<强> HTML

<input type="radio" name="categoryid" id="categoryid1" value="13,14" />Category2
<input type="radio" name="categoryid" id="categoryid2" value="404" />Category3

<input type="hidden" name="categoryids" id="categoryids" value="" />

<强> JQuery的

$(function() {
    $('input:radio[name=categoryid]').change(function() {
        if ($(this).val().indexOf(",") >= 0) {
            $("#categoryids").val("13,14");
        }else{
            $("#categoryids").val("");
        }
    });
});