Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/256.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
通过AJAX将表单值传递给php_Php_Jquery_Post_Radio Button - Fatal编程技术网

通过AJAX将表单值传递给php

通过AJAX将表单值传递给php,php,jquery,post,radio-button,Php,Jquery,Post,Radio Button,我很难通过Ajax发送此表单。我开始获取要发送的值,但添加了单选按钮var messagetype后就停止了。由于添加了变量,页面不再像以前一样将任何值传递到它将传递它们的位置 我相信这与var dataString有关,并且这些值没有正确地传递,而且自从添加var messagetype之后,它开始出错,它一定是从这里开始的 我已经尝试了var messagetype的代码,添加了一个类并进行了尝试,编写了一些方法,但仍然没有效果 这是我的密码: js $('#formsend').click

我很难通过Ajax发送此表单。我开始获取要发送的值,但添加了单选按钮
var messagetype
后就停止了。由于添加了变量,页面不再像以前一样将任何值传递到它将传递它们的位置

我相信这与
var dataString
有关,并且这些值没有正确地传递,而且自从添加
var messagetype
之后,它开始出错,它一定是从这里开始的

我已经尝试了
var messagetype
的代码,添加了一个类并进行了尝试,编写了一些方法,但仍然没有效果

这是我的密码:

js

$('#formsend').click(function(){

var name = $("input#name").val();
var email = $("input#email").val();
var phone = $("input#phone").val();
//Where I think it's going wrong:
var messagetype = $("input[name='messagetype']:checked").val();

var trackurl = $("input#trackurl").val();
var trackdesc = $("input#trackdesc").val();

var eventdate = $("input#eventdate").val();
var eventdesc = $("input#eventdesc").val();
var adrsone = $("input#adrsone").val();
var adrstwo = $("input#adrstwo").val();
var adrsthree = $("input#adrsthree").val();
var pcode = $("input#pcode").val();

var detail = $("input#subject").val();
var note = $("input#note").val();


  var dataString = 'name='+ name + '&email=' + email + '&phone=' + phone +'&messagetype=' + messagetype + '&trackurl=' + trackurl + '&trackdesc=' + trackdesc + '&eventdate=' + eventdate + '&eventdesc=' + eventdesc + '&adrsone=' + adrsone + '&adrstwo=' + adrstwo + '&adrsthree=' + adrsthree + '&pcode=' + pcode + '&detail=' + detail + '&note=' + note;


$.ajax({
  type: "POST",
  url: "processmail.php",
  data: dataString,
  success: function() {
    $('#form').html("<div id='message'></div>");
    $('#message').html("<h2>Message Submitted.</h2>")
    .append("<p>Thank you for contacting me, I will be in touch soon.</p>")
    .hide()
    .fadeIn(1500);
  }
});
return false;

}); //end form ajax
我是新来的,并遵循了一些教程来实现它,所以我现在有点卡住了,为什么它不会工作

任何帮助都将不胜感激。

使用
serialize()或SerializeArray

var dataString = $('#FORMID').serialize();
并将
dataString
传递给
$中的数据变量。ajax
data

&在php部分中可以获得表单中所有字段的值

使用
GET或POST
方法

messagetype
在表单中设置隐藏字段,或将其附加到
dataString
中,以便在php文件中获得messagetype

使用
serialize()或SerializeArray

var dataString = $('#FORMID').serialize();
并将
dataString
传递给
$中的数据变量。ajax
data

&在php部分中可以获得表单中所有字段的值

使用
GET或POST
方法


messagetype
在表单中设置隐藏字段,或将其附加到
dataString
中,以便在php文件中获得messagetype

尝试使用对象作为数据参数

$.ajax({
  type: "POST",
  url: "processmail.php",
  data: {'name': name, 
        'email': email},
  success: function() {
    $('#form').html("<div id='message'></div>");
    $('#message').html("<h2>Message Submitted.</h2>")
    .append("<p>Thank you for contacting me, I will be in touch soon.</p>")
    .hide()
    .fadeIn(1500);
  }
});
$.ajax({
类型:“POST”,
url:“processmail.php”,
数据:{'name':名称,
“电子邮件”:电子邮件},
成功:函数(){
$('#form').html(“”);
$('#message').html(“已提交邮件”)
.append(“谢谢您与我联系,我很快就会与您联系。

”) .hide() .fadeIn(1500); } });
尝试将对象用于数据参数

$.ajax({
  type: "POST",
  url: "processmail.php",
  data: {'name': name, 
        'email': email},
  success: function() {
    $('#form').html("<div id='message'></div>");
    $('#message').html("<h2>Message Submitted.</h2>")
    .append("<p>Thank you for contacting me, I will be in touch soon.</p>")
    .hide()
    .fadeIn(1500);
  }
});
$.ajax({
类型:“POST”,
url:“processmail.php”,
数据:{'name':名称,
“电子邮件”:电子邮件},
成功:函数(){
$('#form').html(“”);
$('#message').html(“已提交邮件”)
.append(“谢谢您与我联系,我很快就会与您联系。

”) .hide() .fadeIn(1500); } });
我选择了这个答案,因为我是新手,效果不错。现在可以用了,谢谢。我现在的问题是传递textarea字段,我已经将代码从
input#eventdesc
更改为
textarea#eventdesc
,但仍然没有传递变量?我选择了这个答案,因为我是一个新手,效果很好。现在可以用了,谢谢。我现在的问题是传递textarea字段,我已经将代码从
input#eventdesc
更改为
textarea#eventdesc
,但仍然没有传递变量?