AJAX发布数据串被切断

时间:2015-04-09 03:10:38

标签: javascript jquery ajax post

我正在尝试使用ajax将电子邮件地址发布到php,每次发送电子邮件地址变量都会被截断,因此它会以'someone@gmail.c'的形式发送到php。我尝试过toString和escape,但似乎什么都没有用。

感谢。

 function postEmail(){

     var checkEmail = "someone@gmail.com";
     var dataString = 'checkEmail1='+ checkEmail;

     // AJAX Code To Submit Form.
     $.ajax({
     type: "POST",
     url: "myfile.php",
     data: dataString,
     cache: false,
     success: function(result){

     alert(result);
     } 
     });
  }

2 个答案:

答案 0 :(得分:0)

这是构建jQuery AJAX请求数据的推荐方法:

var dataString = {checkEmail1: checkEmail};

请参阅documentation中的示例。

当您发布多个值时,它尤其有用,例如:

var data = {
    something1 : yourVariable1,
    something2 : yourVariable2,
    something3 : 'hardcodedvalue'
}

我更喜欢这样做,而不是像你一样进行手动字符串连接和数据的单独编码。

答案 1 :(得分:0)

发布此消息后不久,经过多年的努力,我得到了它的工作。

我使用了encodeURIComponent并且甚至不需要在另一端解码它:

 var checkEmail = "someone@gmail.com";
 checkEmail = encodeURIComponent(checkEmail); //added this in
 var dataString = 'checkEmail1='+ checkEmail;