我页面上我的单选框上的默认值设置为选中。我注意到当我更改选择并重新加载页面时,检查将恢复为默认值。我想知道是否有一种方法在javascript中以编程方式设置我的无线电元素的值检查属性。
这是我的HTML
<body>
<TD><INPUT TYPE="radio" NAME="Performer" VALUE="Aitken" >Aitken</TD>
<TD><INPUT TYPE="radio" NAME="Performer" VALUE="Coltrane" CHECKED>Coltrane</TD>
<TD><INPUT TYPE="radio" NAME="Performer" VALUE="Julliard" >Julliard</TD>
<TD><INPUT TYPE="radio" NAME="Performer" VALUE="Kronos" >Kronos</TD>
<TD><INPUT TYPE="radio" NAME="Performer" VALUE="Waits" >Waits</TD>
<input type="submit" id="submit_button"name="sunmit">
</body>
答案 0 :(得分:1)
Html本质上是无国籍的。更改页面上某些内容的值绝对没有任何意义,除非你真的对它做了什么。
为了保留此值,您必须将其发送回服务器(通过AJAX或传统的表单提交),而不是使用硬编码值,而是使用您选择的动态语言。
您还可以使用local storage来创建特定于用户/计算机的JavaScript实现。
答案 1 :(得分:0)
每次有人检查/取消选中包含所有已检查元素的cookie时,您都可以设置cookie,然后根据页面加载时的cookie数据重新检查它们。
但除非你知道自己在做什么,否则我不会推荐它,因为当你用表格做“意外”的事情时,你会危及可用性。
答案 2 :(得分:0)
一旦您知道应该检查哪个按钮,使用cookie值或localStorage作为其他答案建议,您确实可以使用javascript检查按钮。这是一个jQuery片段:
var valueToCheck = "Kronos"; // assume you have a known value like this one
$('input[name="Performer"][value="'+ valueToCheck +'"]').prop('checked', true);
如果您没有可用的jQuery,则可以使用本机代码。每个输入元素都有value
属性,单选按钮也有checked
属性:
var buttons = document.getElementsByTagName('input'), button;
for (var i = 0; i < buttons.length; i += 1) {
button = buttons[i];
if (button.name === "Performer" && button.value === valueToCheck) {
button.checked = true;
break;
}
}