0

所以我有一个表单,如果某些字段是无效的,它不会提交表单,它会吐出一个alert()告诉他们修复它。我面临的问题是它重置了表单并且用户添加的所有数据都消失了。由于我的表单太大,我将向您展示我的 jQuery 函数:

$('#microForm').live('submit', function(){
                if ($('#barcode').val() != '') {
                    insertForm();
                } else {
                    alert('Insert Barcode');
                    return false;
                }
});

<form id="microForm">

我正在一个带有phonegap的android应用程序上尝试这个 - 将表单插入到本地数据库表(即sqlite)。

任何帮助,将不胜感激。谢谢。

4

2 回答 2

1

这应该可行,看看我为你做的一个例子:http: //jsfiddle.net/Gajotres/bGdM6/

您应该使用on而不是live

$('#microForm').on('submit', function(event){
    if ($('#barcode').val() != '') {
        alert('Submit');
    } else {         
        alert('Insert Barcode');
        return false;
    }
});

在直播直播之间切换,看看它是如何工作的。

于 2013-02-07T11:55:55.280 回答
1

我对@Gajotres jsFiddle 做了一个小的调整:

您可以检查提交按钮单击/点击事件,而不是在表单上使用提交,如果您需要的所有值都在那里,则提交表单

JS:

$('#submit-btn').on('click', function(event) {
    if ($('#barcode').val() != '') {
        alert('Submit');
        $('#microForm').submit(); // <-- submit the form
    } else {
        alert('Insert Barcode');
        event.preventDefault();
        return false;
    }
});

HTML

<div data-role="page" id="index">
    <div data-theme="a" data-role="header">
        <h3>
            First Page
        </h3>
        <a href="#second" class="ui-btn-right">Next</a>
    </div>

    <div data-role="content">
        <form id="microForm">
            <input type="text" value="" id="barcode"/>
            <input type="submit" id="submit-btn" value="Submit"/>
        </form>
    </div>

    <div data-theme="a" data-role="footer" data-position="fixed">

    </div>
</div>  
于 2013-02-07T14:08:08.320 回答