0

ユーザーがフォームを送信しようとしたときに、2つの入力の設定を確認したい場所で作業しているjQuery Mobileフォームがあります。最初の入力は jquery モバイル フリップスイッチで、2 番目の入力はチェックボックスです。

フリップスイッチの値が 1 で、チェックボックスがオンになっている場合、スローしてエラーを発生させたいと思います。以下の jQuery コードが機能しません。私は正しい軌道に乗っていると確信していますが、ここで何が間違っているのかわかりません。誰にもアイデアはありますか?

私のHTML

<select name="flip-min" id="flip-min" data-role="slider">
    <option id="filled" value="1">Filled</option>
    <option id="notFilled" value="0">Un-Filled</option>
</select>

<input type="checkbox" name="unable" id="unable"/>
<label for="unable">label text</label>

<input type="button" name="submit" value="submit">

私のjQuery

$("input[name=submit]").on("click", function(){
    if($('#unable').is(':checked') && $('#flip-min').val() == 1){
        alert "error message";
        exit;
    }
});
4

3 に答える 3

1

コードにいくつか問題があるようです。まず、アラート関数を括弧で囲みません。これは間違いなくエラーになります。次に、「exit;」があります。if ステートメントの最後に、実際には「return;」を使用したい場合。コードは次のようになります。

$("input[name=submit]").on("click", function(){
    if($('#unable').is(':checked') && $('#flip-min').val() == 1){
        alert("error message");
        return;
    }
});

于 2014-10-22T20:38:48.510 に答える
0

'alert' は関数なので、次のように括弧内に引数を設定して呼び出す必要があります。

alert("error message");

代わりに終了するには、「return;」を入力する必要があります。

于 2014-10-22T20:38:18.650 に答える
0

@Austin、あなたのコードは正しいですが、アラートの構文が正しくありません!!!

正しい構文

alert ("I have an error...!");

また、console.log + ブラウザーの開発ツール(F12)を使用して、メッセージとオブジェクトの値を監視することもできます。

正しいコード + console.log ステートメント

$("input[name=submit]").on("click", function(){
    if($('#unable').is(':checked') && $('#flip-min').val() == 1){
        console.log('I have an error...!');
        alert ("I have an error...!");
    }
});

結果 ここに画像の説明を入力

私は答えにFirefox + Firebugを使用しました ;)

于 2014-10-22T21:06:19.470 に答える