使用<重置所有字段(复选框、文本、选择);body onload()">
Reset all fields (checkbox, text, select) with <body onload();">
我正在尝试清除页面上的所有字段,但我不想要重置按钮。我只想让人们点击F5、刷新等
我正在尝试使用此
<body onload="MM_preloadImages('../images/PrintButtonWhite.png'); document.CourseMenu.reset();">
清除我的整个表单中的复选框、下拉菜单和文本框。它不起作用。
也试过这个
<script type="text/javascript">document.CourseMenu.reset();</script>
有什么想法吗?
CourseMenu
是您的form
的ID吗?如果是的话,试试这个:
document.getElementById('CourseMenu').reset();
假设您有一个Util对象。我这样做是因为我不仅使用琐碎的html控件,还使用日期选择器和boostrap开关,所以你必须手动完成。我删除了所有额外的代码,让它来处理基本代码,这样你就可以完全控制你要重新设置的内容。。我认为你也可以发送一个contair值,而不是一个表单,并且会像<div>
一样工作。
--编辑--你可以像Util.resetForm($("#myid");而不管是form
还是其他special tag
你可以从这个开始。。。只需使用加载方法上的函数
尝试一下:http://jsfiddle.net/ncubica/DGMAC/
function reset(objectHTML) {
objectHTML.find("input, textarea,select").not("input[type=submit]").each(function (_index, _item) {
//field is going to evalute ?
if (typeof $(_item).attr("data-ignore") === "undefined") {
switch(_item.type){
case "text":
$(_item).val("");
break;
case "checkbox":
$(_item).removeAttr("checked");
break;
case "select":
$(_item).prop("selectedIndex", -1);
break;
}
}
});
};
$("#test").one("click",function(){
reset($("#myform"))
});
您可以添加标记数据ignore="ignore"以不让脚本重置值,这在您不想丢失某些选定的索引时很有用
运行此脚本后,所有select
标记都将显示为空白,而不进行任何选择。
//这可以通过开关来改善。。但是,我只是在展示它是如何工作的。。
相关文章:
- Div根据<选择>菜单
- 如何更改<选择>使用angularJS从控制器获得的值
- 当<选择的选项>重新选择
- 依赖<选择>HTML和JavaScript菜单
- 选择<李>使用普通JavaScript的子节点,而不是孙节点
- 如何传递相同页面<选择>值到同一页<f: param>
- 渲染<选项值=“;foo”;选择>在服务器上
- <选择>标签不起作用
- 当我有<选择>下拉列表
- 记住<选择>重新加载页面
- <中的链接;选择>下拉选项
- 映射多个<选择>至<输入>
- <上的applyBindings();选择>正在导致我的subscribe()起火,
- 触发器<输入类型=“;文件“>用angular程序选择文件
- 如何动态生成X数量的新<输入>基于a<选择>(Angular2内)
- 为:gt或:lt选择器设置变量零基数
- 用“<选择></选择>"类型
- JQuery.append的</选择>标记被忽略
- 如何从
- 使用lt(3)选择器为每个元素设置不同的背景色