【发布时间】:2021-12-28 06:08:34
【问题描述】:
我确定这在某处得到了回答,但我找不到。我有一个单选按钮和一个如下所示的数字字段。我想让它在第一个单选按钮被选中时,数字框的最大值为 1,而当另一个单选按钮被选中时,最大值限制被删除。
所以当第一个收音机被选中时是这样的
<form action="test.html" method="POST">
<input id="mySelect" type="radio" name="isunique" value="0"> Unique
<input id="mySelect" type="radio" name="isunique" value="1"> Not Unique
<input type="number" min="0" max="1" step="1" name="qty">
</form>
当第二个收音机被选中时就像这样
<form action="test.html" method="POST">
<input id="mySelect" type="radio" name="isunique" value="0"> Unique
<input id="mySelect" type="radio" name="isunique" value="1"> Not Unique
<input type="number" min="0" step="1" name="qty">
</form>
我尝试使用函数调用来做到这一点
onchange="unlimitqty()"
函数在哪里
function unlimitqty() {
var x = document.getElementById("mySelect").value;
document.getElementById("qlimit").innerHTML = "<input type=\"number\" min="0\" step=\"1\" name=\"qty\">\n";
}
还有另一个函数limitqty()
function limitqty() {
var x = document.getElementById("mySelect").value;
document.getElementById("qlimit").innerHTML = "<input type=\"number\" min=\"0\" max=\"1\" step=\"1\" name=\"qty\">\n";
}
然后我把这个放在表格里
<p id="qlimit">
这会在页面上产生正确的行为,但在提交表单时不会传递变量。
我并不是真的要修复这种方法,我觉得一定有更好的方法。必须有一些 JavaScript 内置函数来限制数字字段。就是没找到。
任何帮助将不胜感激!
【问题讨论】:
标签: javascript forms