JavaScript在IE8和9中工作但在Chrome中没有

时间:2014-03-13 05:48:08

标签: javascript html internet-explorer google-chrome internet-explorer-8

我有这个javascript来查看是否选中了下拉列表。如果不是,则显示错误消息。问题是该代码适用于 IE9 8 ,但不适用于 Chrome

对此的简单解决方案是添加" 必需"属性到标签,但我想知道代码不起作用的原因。

<form name="form1" action="insert.php" method="post" onsubmit="return validateForm()">
<table name="table1">
     <tr>
        <td>
            <select name="fruits">
                <option selected disabled>Please Select</option>
                <option value="banana>banana</option>
                <option value="apple>apple</option>
            </select>
        </td>
    </tr>
</table>
<input type="submit" value="Submit"/>
</form>

<script type="text/javascript">
    function validateForm()
    {
    var x=document.forms["form1"]["fruits"].value;
    if (x==null || x=="")
      {
      alert("Please Select Fruit");
      return false;
      }
    }
</script>

1 个答案:

答案 0 :(得分:1)

请查看此代码,required是html5属性,默认情况下检查empty

<form name="form1" action="insert.php" method="post" onSubmit="return validateForm()">
    <table name="table1">
        <tr>
            <td>
                <select name="fruits">
                    <option value=" "  disabled>Please Select</option>
                    <option value="banana">banana</option>
                    <option value="apple">apple</option>
                </select>
            </td>
        </tr>
    </table>
    <input type="submit" value="Submit" />
</form>
<script>
    function validateForm() {
        var x = document.forms["form1"]["fruits"].value;

        if (x == null || x == " ") {
            alert("Please Select Fruit");
            return false;
        }
    }
</script>

在这里演示:http://jsfiddle.net/2zgGM/