1

サーバーに送信する前にフォームを検証しようとしています。定期的な検証のためにいくつかのJ/Sプラグインを試しましたが、どれも機能していないようです。

getJSONjquerymobileで検証方法を探してみましたが、関連するものは何も見つかりませんでした。$.getJSON正しいアプローチを使用していますか?

これがフィドルですhttp://jsfiddle.net/Kimbley/kMsXK/2/

ありがとう

ここにコード:

    function mAddBusiness() {
        $.getJSON("API.php", {
            command: "addBusiness",
            bsnName: $("#mBsnName").attr("value"),
            bsnCity: $("#mBsnCity").attr("value"),
            bsnAddress: $("#mBsnAddress").attr("value"),
            bsnMenu: $("#mBsnMenu").attr("value"),
            bsnLat: bsnLat,
            bsnLong: bsnLong
        },
            function () {
            $("#mBsnName").attr("value", "");
            $("#mBsnCity").attr("value", "");
            $("#mBsnAddress").attr("value", "");
            $("#mBsnMenu").attr("value", "");
            alert("Business was added successfully ");
        }
            );
    }
4

1 に答える 1

0

関数内mAddBusiness()では、AJAXリクエストを送信する前に検証を行うことができます。何かのようなもの:

function mAddBusiness() {
    if ($("#mBsnName").val() !== '') {
        $.getJSON("API.php", {
            command: "addBusiness",
            bsnName: $("#mBsnName").val(),
            bsnCity: $("#mBsnCity").val(),
            bsnAddress: $("#mBsnAddress").val(),
            bsnMenu: $("#mBsnMenu").val(),
            bsnLat: bsnLat,
            bsnLong: bsnLong
            },
            function () {
                $("#mBsnName").val("");
                $("#mBsnCity").val("");
                $("#mBsnAddress").val("");
                $("#mBsnMenu").val("");
                alert("Business was added successfully ");
            }
        );
    } else {
        alert('Please enter a business name.');
    }
}

jQuery Mobileがフォーム自体を送信しようとしないように、問題data-ajax="false"のタグに属性を追加する必要があることに注意してください。<form>

$('input').attr('value')また、入力の現在の値を返すのではなく、ユーザーが何かを入力する前の初期値を返すことに注意してください。フォーム入力の現在の値を取得するには、次を使用します:http .val(): //api.jquery.com/val

于 2012-07-10T20:25:46.307 に答える