2

我使用 jquery 作为我的表单。我的表单有很多单选按钮类型的问题。

<div>
        <label>1) Competently cut paper with scissors?</label>
            <br />
            <input type="radio" name="CAT_Custom_165607" id="CAT_Custom_165607_0" value="Yes" />
            Yes
            <input type="radio" name="CAT_Custom_165607" id="CAT_Custom_165607_1" value="No" />
            No
    </div>
    <div>
        <label>2) Hold a pencil in a mature pencil grip? </label>
            <br />
            <input type="radio" name="CAT_Custom_165609" id="CAT_Custom_165609_0" value="Yes" />
            Yes
            <input type="radio" name="CAT_Custom_165609" id="CAT_Custom_165609_1" value="No" />
            No
    </div>
    <div>
        <label>3) Write his/her first name - recognisable? </label>
            <br />
            <input type="radio" name="CAT_Custom_165610" id="CAT_Custom_165610_0" value="Yes" />
            Yes
            <input type="radio" name="CAT_Custom_165610" id="CAT_Custom_165610_1" value="No" />
            No
    </div>

我在这里有我的 jquery 函数:

function checkWholeForm(){
      var q1 = $('input[@name="CAT_Custom_165607"]:checked').val();
      var q2 = $('input[@name="CAT_Custom_165609"]:checked').val();
      var q3 = $('input[@name="CAT_Custom_165610"]:checked').val();
      alert(q2);
      return false;
       }

当我对三个问题选择否、是、是时。它总是提示“否”,这是 q1 的值。但我尝试提醒 q2 的值。当我提醒 q3 时,结果相同。这里有什么冲突吗?干杯。

4

3 回答 3

3

您对属性选择器使用了错误的语法。正确的语法是

'input[name="CAT_Custom_165607"]:checked'

注意,没有@

于 2013-05-07T10:33:00.237 回答
0

嘿,请尝试此代码。

$('input:radio').change(function () {
alert($(this).val());
});

看演示

我希望它对你有用。

于 2013-05-07T10:42:41.487 回答
0

使用最近的 jQuery 版本,您还可以执行以下操作,查找选定的输入并返回值。

$('input[name=CAT_Custom_165610]').val()

此外,不要在 Javascript 中进行验证,除非它只是为了美观。它可以被绕过。无论是什么,始终在您的后端代码中进行验证。

于 2013-05-07T10:36:44.437 回答