-2

このコードを使用して、ajax と jquery を使用してフォーム入力フィールドを検証しています。このページでは: http://www.kbay.in/ajaxform/index.php

$(document).ready(function() {

//if submit button is clicked
$('#submit').click(function () {        

    //Get the data from all the fields
    var name = $('input[name=name]');
    var phone = $('input[name=phone]');
    var package_name = $('input[name=package_name]');
    var comment = $('input[name=comment]');

    //Simple validation to make sure user entered something
    //If error found, add hightlight class to the text field
    if (name.val()=='') {
        name.addClass('hightlight');
        return false;
    } else name.removeClass('hightlight');

    if (phone.val()=='') {
        phone.addClass('hightlight');
        return false;
    } else phone.removeClass('hightlight');

    if (package_name.val()=='') {
        package_name.addClass('hightlight');
        return false;
    } else package_name.removeClass('hightlight');

    if (comment.val()=='') {
        comment.addClass('hightlight');
        return false;
    } else comment.removeClass('hightlight');

    //organize the data properly
    var data = 'name=' + name.val() + '&phone=' + phone.val() + '&package_name=' + 
    package_name.val() + '&comment='  + encodeURIComponent(comment.val());

しかし、チェックボックスを追加しましたが、このスクリプトを使用して検証する方法がわかりません...何かアイデアはありますか....?

4

2 に答える 2

2

is( ":checked")を使用できます:

var commentChecked = $("input[name='comment']").is(':checked'); //returns true or false
var commentVal; //define variable for storing comment value

if (!commentChecked) {
   commentVal = "";
   comment.addClass('hightlight');
   return false;
} else  {
   comment.removeClass('hightlight');
   commentVal = comment.val();;
}

var data = 'name=' + name.val() + '&phone=' + phone.val() + '&package_name=' + 
    package_name.val() + '&comment='  + encodeURIComponent(commentVal);
于 2012-08-09T10:02:11.560 に答える
1

HTML にチェックボックスを追加します...次のようにします。

<input type="checkbox" id="ch1">

チェックされているかどうかを確認するjQueryコードは、次のようになります。

if ($("#ch1").prop("checked")) {
    alert("is checked");
}
else {
    alert("is not checked");
}
于 2012-08-09T10:20:20.633 に答える