暂停javascript处理?

时间:2012-02-29 20:37:15

标签: javascript jquery

如果我取消注释“alert”,以下代码可以完美运行。这就是我用来做一组级联下拉菜单的想法,用户选择Country,然后是State,然后选择City。

警告取消注释后,就像值尚未更新。我尝试了很多东西,但我没有运气。我确定我做的事情很愚蠢。非常感谢任何帮助。

谢谢!

$(document).ready(function () {
    $("#Country").change(function () {
        $("#City").html("");
        var id = $("#Country").val();
        getStates(id);

//      alert("CountryId = " + id);
        var stateId = $("#State").val();
//      alert("stateId = " + stateId);
        var stateId = $("#State").val();
        alert("stateId = " + stateId);

        $(document).ready(function() {
            getCities(stateId);
        });
    });
    $("#State").change(function(){
        var id = $("#State").val();
        id = (id==null)?1:id;
            getCities(id);
    });
});

2 个答案:

答案 0 :(得分:7)

如果函数getStates是对服务器的异步请求,那么你必须向它添加成功回调。如果不是,那很奇怪。

顺便说一句。 $(document).ready在文档准备就绪没有任何意义。

答案 1 :(得分:0)

您的代码没有多大意义

也许这就是你的意思

$(document).ready(function () {
  $("#Country").change(function () {
    var id = $(this).val();
    getStates(id);
  });
  $("#State").change(function () {
    var id = $(this).val();
    getCities(id);
  });
});