根据多个复选框控件的值更新输入项的值
Update the value of an input item based on the value of multiple checkbox controls
这是我的小提琴。https://jsfiddle.net/sinoobkt/1kd16pgx/1/
如果我选中复选框,那么值应该显示在输入字段中,如果我取消选中复选框,它的值应该从输入字段中删除。我还需要能够从输入字段手动删除值。一旦我点击清除然后所有的值应该被清除。
function Myfunction(){
}
<form action="">
<input type="checkbox" name="day" id="1" value="Sunday">Sunday<br>
<input type="checkbox" name="day" id="2" value="Monday">Monday <br>
<input type="checkbox" name="day" id="3" value="Tuesday">Tuesday<br>
<input type="checkbox" name="day" id="4" value="Thursday">Thursday<br>
<input type="checkbox" name="day" id="5" value="Friday">Friday<br>
Selected Days: <input type="text" name="LastName" value=""><br>
<input type="submit" value="Clear" onclick="Myfunction()">
</form>
<form action="">
<input type="checkbox" name="day" id="1" value="Sunday" onclick="fillInput(this);">Sunday<br>
<input type="checkbox" name="day" id="2" value="Monday" onclick="fillInput(this);">Monday <br>
<input type="checkbox" name="day" id="3" value="Tuesday" onclick="fillInput(this);">Tuesday<br>
<input type="checkbox" name="day" id="4" value="Thursday" onclick="fillInput(this);">Thursday<br>
<input type="checkbox" name="day" id="5" value="Friday" onclick="fillInput(this);">Friday<br>
Selected Days: <input type="text" name="LastName" value=""><br>
<input type="button" value="Clear" onclick="Myfunction()">
</form>
<script>
function Myfunction(){
document.getElementsByName("LastName")[0].value="";
}
function fillInput(element){
if(element.checked) {
document.getElementsByName("LastName")[0].value= document.getElementsByName("LastName")[0].value + element.value + " ";
}
else {
document.getElementsByName("LastName")[0].value = document.getElementsByName("LastName")[0].value.replace(element.value + " ", "");
}
}
</script>
function Myfunction(){
document.getElementById("1").value = "";
...
}
你可以这样做:
var checkboxes = document.getElementsByName('day');
for (var i = 0; i < checkboxes.length; i++) {
checkboxes[i].addEventListener("click", function () {
if (this.checked) {
add(this.value);
} else {
remove(this.value);
}
});
}
function add(value) {
var textbox = document.getElementById('selectedDay');
textbox.value += value;
}
function remove(value) {
var textbox = document.getElementById('selectedDay');
textbox.value = textbox.value.replace(value, '');
}
<form action="">
<input type="checkbox" name="day" id="1" value="Sunday">Sunday<br>
<input type="checkbox" name="day" id="2" value="Monday">Monday <br>
<input type="checkbox" name="day" id="3" value="Tuesday">Tuesday<br>
<input type="checkbox" name="day" id="4" value="Thursday">Thursday<br>
<input type="checkbox" name="day" id="5" value="Friday">Friday<br>
Selected Days: <input type="text" id="selectedDay" value=""><br>
<input type="reset" value="Clear">
</form>
这里,onclick事件监听器被添加到所有的复选框中,在检查或检查时,它将分别调用add或remove函数,它们负责从文本框中添加和删除日期。
你可以将Clear Button类型设置为reset Button显然你不想在Clear Button click上执行myFunction()
相关文章:
- 使用Javascript更新输入框中的文本
- 以字符串形式读取量角器测试中的更新输入
- 如何动态更新输入值属性
- 当html选择/选项发生更改时,需要更新输入字段
- 用于更新输入的 Javascript 被占位符覆盖
- 更新输入类型=文本值或文本框控件调整大小事件
- AngularJS绑定模型以选择更新输入数字字段,最小值为最大值
- 从数据库填充的下拉菜单中更新输入字段
- 如何在拖动行时更新输入值
- 为什么在更新输入类型文本的值时,敲除不更改值属性
- 如何更新列表项由jQuery AJAX调用添加的ASP Dropdown:错误无效的回发或回调
- 使用javascript将span更改为input(viceversa),然后AJAX更新输入
- Knockout Js的自定义绑定处理程序更新依赖项
- 按键更新输入落后1步
- NG模型仅在使用谷歌地图自动完成时单击后更新输入
- Javascript更新输入字段(将光标放在输入中)
- 更新输入类型时间的值(重新渲染)并使用 React 再次关注元素
- Twitter TypeAhead.js不更新输入
- 当输入字段更新时,如何在knockout.js中更新observableArray项?
- 根据多个复选框控件的值更新输入项的值