0

このスクリプト(http://www.position-absolute.com/articles/jquery-form-validator-because-form-validation-is-a-mess/)を使用して、フォームなどを検証しています。送信機能。

処理するフォームを送信するコードは次のとおりです。

jQuery("#adminForm_1").validationEngine({
    ajaxSubmit: true,
    ajaxSubmitFile: "/index.php?option=com_database&view=tripdetails&Itemid=12&client=1&task=save",
    ajaxSubmitMessage: "Client Trip Details Saved",
    inlineValidation: false,
    success: false,
    failure: function() {}
});

しかし、すべてのフィールドに入力していない場合に警告するこのコードがあります。

jQuery("#adminForm_1").submit(function () {

    var empty = false;
    jQuery(":input", "#adminForm_1").each(function() {
        empty = (jQuery(this).val() == "") ? true : empty;
    });
    if(empty) {
        var empty_ok = confirm('You have not filled out all of the fields, do you wish to continue?');
        return empty_ok;
    }

});

現在、[キャンセル]をクリックしてもフォームは送信されます。キャンセルを押したときにフォームが送信されないようにコードを変更するにはどうすればよいですか?

4

1 に答える 1

1

1つのフィールドが空の場合はtrueに設定され、後のフィールドが空でない場合はfalseに再設定されます。

空がすでにtrueであるかどうかを確認するか、最初のtrue割り当てでfalseを返す必要があります。または、エラー配列を使用してデータを入力し、.lengthがあるかどうかを確認し、ある場合は確認を行います。

于 2009-09-23T05:16:45.840 に答える