Javascript 用于Innerhtml更新的Ajax原型到Jquery的转换

Javascript 用于Innerhtml更新的Ajax原型到Jquery的转换,javascript,jquery,ajax,prototype,innerhtml,Javascript,Jquery,Ajax,Prototype,Innerhtml,我第一次尝试使用jquery而不是prototype。我有一个表格,当你在我的下拉列表中更改国家时,我想调用另一个脚本,它将显示适当的州/省列表。在原型中,我只会使用: function getstates(form) { document.getElementById("stateresult").innerHTML="<img src='images/ajaxshippingload.gif' border='0'> Processing..."; var checki

我第一次尝试使用jquery而不是prototype。我有一个表格,当你在我的下拉列表中更改国家时,我想调用另一个脚本,它将显示适当的州/省列表。在原型中,我只会使用:

function getstates(form) {
   document.getElementById("stateresult").innerHTML="<img src='images/ajaxshippingload.gif' border='0'> Processing...";
  var checkingurl="shopgetstates.asp";
  var pars = 'country=' + form.country.value + '';
  var url = checkingurl + '?' + pars;
  var target = 'stateresult';
  var myAjax = new Ajax.Updater(target, checkingurl, {method: 'post',parameters: pars});
}


但考虑到我只需要抓取1下拉列表中的选定值,我认为这太过分了。有没有更简单的方法来完成我想要做的事情?

1)
stateresult
似乎是一个id属性而不是class属性。您应该在成功回调中使用
#statesult
而不是
.statesult
。2) 在这种情况下,您不需要使用
.find()
,因为id
stateresult
在文档中无论如何都必须是唯一的。3) 请求的
数据
参数在这些请求中不同。在原型示例中,它只是国家值,在jQuery示例中,您正在序列化整个formOk草率编码,我可以进行这些更正。我不希望使用serialize,而是只获取每个请求的单个值,有没有办法做到这一点?如果是,怎么做?谢谢你迄今为止的帮助。比如:
data:'country='+form.country.value
我的朋友,你太棒了,谢谢!!
function getstates() {
$.ajax({type:'POST', url: 'shopgetstates.asp', data:$('#ListingForm').serialize(), success: function(response) {
    $('#ListingForm').find('.stateresult').html(response);
}});

return false;