微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在ajax中传递复选框的值

如何解决在ajax中传递复选框的值

| 我的JavaScript和PHP目前非常低,我正在尝试使某些事情变得非常简单,但可以做到! 我有一个表单,我希望将checBox值(标为课程的值)传递到他们需要到达的文件(其所有功能都很好,并传递给复选框之外的所有内容),然后从那里传递给电子邮件(有效)复选框除外)。 这是我的代码: (再次-一切正常,但复选框有效,我删除了诸如验证其他内容之类的小内容,因此阅读起来很麻烦)
<script type=\"text/javascript\">
    jQuery(function () {

        jQuery(\".button\").click(function () {
            // validate and process form
            // first hide any error messages
            jQuery(\'.error\').hide();

            var name = jQuery(\"input#name\").val();

            var email = jQuery(\"input#email\").val();

            var phone = jQuery(\"input#phone\").val();


            var dataString = \'name=\' + name + \'&email=\' + email + \'&phone=\' + phone;
            //alert (dataString);return false;

            jQuery.ajax({
                type: \"POST\",url: \"mitkadmim.PHP\",data: dataString,success: function () {
                    jQuery(\'#contact_form\').html(\"<div id=\'message\'></div>\");
                    jQuery(\'#message\').html(\"<h2>Contact Form Submitted!</h2>\")
                        .append(\"<p>We will be in touch soon.</p>\")
                        .hide()
                        .fadeIn(1500,function () {
                        jQuery(\'#message\').append(\"<img id=\'checkmark\' src=\'images/check.png\' />\");
                    });
                }
            });
            return false;
        });
    });
</script>


    <div id=\"mheo\">

        <div id=\"contact_form\">
          <form name=\"contact\" method=\"post\" action=\"\">
            <fieldset>
              <label for=\"name\" id=\"name_label\">שם: </label>
              <input type=\"text\" name=\"name\" id=\"name\" size=\"30\" value=\"\" class=\"text-input\" /><br/><br/>

              <label for=\"email\" id=\"email_label\">E-mail: </label>
              <input type=\"text\" name=\"email\" id=\"email\" size=\"30\" value=\"\" class=\"text-input\" /><br/><br/>


              <label for=\"phone\" id=\"phone_label\">מס. טלפון</label>
              <input type=\"text\" name=\"phone\" id=\"phone\" size=\"30\" value=\"\" class=\"text-input\" /><br/><br/>

        intrested in:<br/>
                <input type=\"checkBox\" name=\"kidumchoise[]\" value=\"kidum_esek\" />aaa<br />
                <input type=\"checkBox\" name=\"kidumchoise[]\" value=\"mitug_esek\" />bbb<br />
                <input type=\"checkBox\" name=\"kidumchoise[]\" value=\"laikim\" />CCC<br />
                <input type=\"checkBox\" name=\"kidumchoise[]\" value=\"aher\" />DDD<br />


                <br />
              <input type=\"submit\" name=\"submit\" class=\"button\" id=\"submit_btn\" value=\"Send\" />
            </fieldset>
          </form>
        </div>
    </div>
和电子邮件方面
<?PHP
   $recipient = \'ddsds@gmail.com\';
   $name = $_POST[\'name\'];
   $email = $_POST[\'email\'];
   $phone = $_POST[\'phone\'];
   $kidumchoise = $_POST[\'kidumchoise\'];   

   $msg = \"Message from: $name\\n\\n\".$_POST[\'phone\'].\"\\n\".$_POST[\'email\'].$_POST[\'kidumchoise\'].\"    \\n\"\"\\n\".$_POST[\'kidumchoise\'].\"\\n\";
   mail($recipient,$name,$msg);
?>
我做错了什么? 谢谢,     

解决方法

        
            var chkElem = document.getElementsByName(\"kidumchoise[]\");
            var choice =\"\";

            for(var i=0; i< chkElem.length; i++)
            {
                if(chkElem[i].checked)
                    choice = choice + chkElem[i].value;
            }

            var dataString = \'name=\'+ name + \'&email=\' + email + \'&phone=\' + phone + \'&kidumchoise=\' +choice;
在以下行之后添加以下代码
                var phone = jQuery(\"input#phone\").val();
它将正常工作。     

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。