0

我正在尝试清除页面上的所有字段,但我不想要重置按钮。我只想让人们按 F5、刷新等。

我正在尝试使用这个...

<body onload="MM_preloadImages('../images/PrintButtonWhite.png'); document.CourseMenu.reset();">

清除我的整个形式的复选框、下拉菜单和文本框。它不工作。

这个也试过...

<script type="text/javascript">document.CourseMenu.reset();</script>

有任何想法吗?

4

2 回答 2

0

假设你有一个 Util 对象。我这样做是因为我不仅使用了简单的 html 控件,还使用了 datepicker 和 boostrap 开关,因此您必须手动进行。我删除了所有额外的代码并让我们使用基本代码,这样你就可以完全控制你正在重置的内容。我认为你也可以发送一个 contair 值而不是一个表单,并且会像一个<div>未经测试的那样工作。

-- 编辑 -- 你可以像 Util.resetForm($("#myid")); 不关心它form或其他special tag

您可以从这个开始...只需使用 onload 方法上的功能

自己试试: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"))
});

您可以添加标签 data-ignore="ignore" 以不要让脚本重置该值,这在您不想丢失某些选择的索引时很有用

运行此脚本后,所有select标签都将显示为空白,而无需对其进行任何选择..

//这可以通过开关来改善..但是,我只是在展示它是如何工作的..

于 2013-07-19T20:41:40.833 回答
0

CourseMenu身份证是你的吗form?如果是这样,试试这个:

document.getElementById('CourseMenu').reset();
于 2013-07-19T20:23:16.090 回答