在JQUERY成功调用函数

时间:2014-09-02 13:54:02

标签: javascript ajax

我有一个我定义的自定义函数,然后我在页面加载时调用。我需要在页面加载时运行该函数,因为它正在填充组选择列表:

<!---Populate Custom Service Description select lists --->           
<script type="text/javascript">
function PopulateSelectLists(){
    // Important: Must append the parameter "&returnformat=json"
    $.ajax({
       url: 'cfcs/get_descriptions.cfc?method=getDescriptions&returnformat=json'
       , dataType: 'json'
       , success: function(response){
           $.each(response.DATA, function(I, row){
            // get value in first column ie "description"
            var description = row[0];

            // append new option to list
            $("#descriptionDD1").append($('<option/>', { 
                    value: description,
                    text : description 
            }));
            $("#descriptionDD2").append($('<option/>', { 
                    value: description,
                    text : description 
            }));
            $("#descriptionDD3").append($('<option/>', { 
                    value: description,
                    text : description 
            }));
            $("#descriptionDD4").append($('<option/>', { 
                    value: description,
                    text : description 
            }));
        });
       },
       error: function(msg){
           console.log(msg);
       }
    })
}
$(document).ready(PopulateSelectLists); 
</script>

我试图在另一个AJAX调用成功完成时调用我的自定义函数PopulateSelectLists(),这样我可以刷新我的选择列表,但它似乎永远不会调用我的函数:

<!---Script to add new description to DB --->
<script>
$(function(){
//Add a new note to a link
$("#addDescriptionForm").submit(function(){
   // prevent native form submission here
        $.ajax({
            type: "POST",
            data: $('#addDescriptionForm').serialize(),
            url: "actionpages/add_descriptions_modal.cfm",
            success: function() {
              PopulateSelectLists(); //Call Function to refresh selectlist  
              $("#addDescriptionResponse").append( "Successfully added description." );

              }    
        });
        return false;           
    });
});
</script>

我在哪里错了?

1 个答案:

答案 0 :(得分:1)

在有问题的情况下,请求是否实际成功返回?使用Firebug或Fiddler或您正在使用的任何开发工具栏检查响应。可能是服务器错误,连接错误或任何其他可能导致请求失败的原因,因此不成功。

您还可以考虑使用完整处理程序:http://api.jquery.com/jquery.ajax/