0
  $.ajax({
             url:"<?php echo site_url('proposal/getContact');?>/"+client,
             type: 'GET',
             dataType: 'json',
             success:function(data) {
             //On succes the data is returned from the url and used accordingly.
                htm='<option value="">Select</option>';
                for(i=0;i<data.length;i++){
                    htm +='<option value="'+data[i].Id+'">'+data[i].Name+'</option>';
                }
                 $('select[id="ProjectContact"]').html(htm);
              }
          });

我想稍后使用变量数据,这样当我选择项目联系人时,我必须处理相同的数据。我试过使用

$('select[id="ProjectContact"]').change(function() {
    var contact=$('select[id="ProjectContact"]').val();
                 htm='<div class="span2 text-right"> <img class="img-rounded"> </div>';
                 htm+='<div class="span4">';
                 htm+='<strong>';
                 for(i=0;i<data.length;i++){
                    if(data[i].Id != contact)
                        continue;
                    htm+=data[i].Name+
                    "</strong>,<br/>"+data[i].Designation+",  <br/>"+
                    data[i].PhoneNumber+",<br />";
                    htm+=data[i].Email+",<br/>"+
                    data[i].FacebookUrl+",<br />"+data[i].TwitterUrl+",<br/>"+
                    data[i].LinkedinUrl;  
                    htm+='</div>';
                 }
                 $("#ContactDetails").html(htm); 

 });

表示无法识别数据。谢谢你。

4

1 回答 1

1

您需要将数据存储在成功函数范围之外的变量中:

 var myData= {};
 $.ajax({
         url:"<?php echo site_url('proposal/getContact');?>/"+client,
         type: 'GET',
         dataType: 'json',
         success:function(data) {
             myData.data = data;
         }
  });

然后,您应该可以稍后参考 myData。但是,您以后的代码如何知道 ajax 调用已完成?

于 2013-03-26T09:33:33.830 回答