我有一个包含收音机的表格。
<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属性?
答案 0 :(得分:1)
根据您的要求只有一个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("");
}
});
});