简单的AJAX下拉菜单



我有这个ajax代码来获取当前选择,所以我可以稍后用php GET调用数据库。Firebug错误:

参数列表后缺少)-"success":function(data){

任何想法?

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
    $("#select").change(function(){
        $.ajax(
            "file.php?selected=" + $(this).val(),
            "success":function(data){
                $("#results").html(data);
            }
        )
    })
});
</script>
<select id="select">
<option> something </option>
<option> something2 </option>
<option> something3 </option>
</select>
<?php
//echo $_GET['selected'];
?>
<div id="results"></div>
$.ajax({
  url: "test.html",
  context: document.body,
  success: function(){
    $(this).addClass("done");
  }
});

您应该这样编写ajax函数:

$.ajax({
  url: "file.php?selected=" + $(this).val(),
  success: function(data) {
      $("#results").html(data);
  }
});

您在"file.php?selected=" + $(this).val(),之前缺少'url'属性名称:

    $.ajax({
        url:"file.php?selected=" + $(this).val(), //note the property name 'url'
        "success":function(data){
            $("#results").html(data);
        }
    })

下面是使用已有语法的答案:

$(document).ready(function(){
    $("#select").change(function(){
        $.ajax(
            "file.php?selected=" + $(this).val(),{
               success:function(data){
                   $("#results").html(data);
            }}
        );
    });
});

确实可以将URL作为AJAX调用的第一个参数传递。您只是缺少在调用的成功回调部分周围创建JSON对象。

最新更新