如何使用ajax将jquery值正确地传递给php


How to properly pass a jquery value to php using ajax?

我想在用户通过文本框输入后,将jquery代码中的一个值传递给php变量,但我在php端通过POST根本没有收到任何值。我使用的是.change和.POST,这里有人知道如何正确地做吗?这是我的代码:

$(document).ready(function(){
 $("#packagename").change(function(){
    var packagename = $('#packagename').val();
    var url = '{{url}}'; //localhost/test/test.php
    $.ajax({
    type: 'post',
    url: url,
    dataType:html,
    data:{'val':packagename},   
    });
  });
});

试用

$(document).ready(function(){
 $("#packagename").change(function(){
    var packagename = $('#packagename').val();
    var url = '{{url}}'; //localhost/test/test.php
    $.ajax({
    type: 'post',
    url: url,
    dataType:text,
    data:{'val':packagename},  
    success:function(result){
alert(result);
} 
    });
  });
});

我能立即看到的唯一问题是dataType:html,中的html需要有这样的引号:dataType: 'html',。否则,您的代码将查找变量html,但找不到它,并抛出错误。

http://api.jquery.com/jQuery.post/

dataType
Type: String
The type of data expected from the server. Default: Intelligent Guess (xml, json, script, text, html).

dataType: html,更改为dataType: 'html',

您是否尝试过将url放入url字段,而不是尝试使用任何对象?

我假设您没有尝试将ajax应用到当前所在的页面,并期望php变量显示在当前页面上。