使用onsubmit函数的Javascript验证在IE8和IE7中不起作用

时间:2013-11-09 08:00:00

标签: javascript validation onsubmit

我有一个简单的html表单,我想验证它的2个输入。验证在Chrome,Firefox,IE9和IE10中运行良好。即如果我没有为plat和plng输入任何值,则提交不会在这些浏览器中执行。

然而,在IE8和IE7中,验证失败,我最终提交表单并执行/php/search.php。

我在页面上采购Jquery 1.8.3。

<form class="form-wrapper cf" id="search-form-primary" action="/php/search.php" method="post" onsubmit="return validateForm();">
    <input id="plat" name="plat" value="" type="text" >
    <input id="plng" name="plng" value="" type="text" >
    <button id="search" type="submit">Search</button>
</form>

<script type="text/javascript">
    function validateForm() {
        var latt= $('#plat').val();
        var lngi = $('#plng').val();   
        if ((latt == "") || (lngi == "") || (latt == null) || (lngi == null))
            return false;
        else
            return true;
        }       
</script>

2 个答案:

答案 0 :(得分:0)

请在主要IE浏览器的onsubmit中添加javascript:

例如

onsubmit="javascript:return validateForm();"

答案 1 :(得分:0)

我通常不提交提交按钮,但使用javascript提交表单。只要javascript不这样做,表单就不会被提交。例如:

<input type="button" name="Submit" value="textOnTheButton" onclick="ValidationFunction()"/>

的Javascript

function ValidationFunction(){
    //validate the form here
    if(valid == true){
        document.getElementById('formName').submit();
    }
}

这一直对我有用......