0

我有一个 jQuery Mobile 表单,我正在处理当用户尝试提交表单时,我想检查 2 个输入的设置。第一个输入是一个 jquery 移动翻转开关,第二个是一个复选框。

如果我的翻转开关值为 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

好的,您的代码似乎有一些问题。首先,警报函数周围没有括号。这肯定会导致错误。其次,你有“退出”;实际上,在 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 回答