2013-04-26 141 views
0

我把Ajax調用Ajax調用內內訪問元素,但在第二,該元件不被認可,例如:不能成功阿賈克斯

$.ajax({ 
    url: 'controleFatAcoes.php', 
    type: 'post', 
    dataType: 'html', 
    data: { 
     acao: 'validaenviofat', 
     id_cliente: cli.id_cliente, 
     dt_fat: cli.id_fat 
    }, 
    success: function(data) { 
     $.ajax({ 
      url: 'controleFatAcoes.php', 
      data: {id_cliente: cli.id_cliente, 
        id_fat: cli.id_fat, acao: 'getdadosnf'}, 
      type: 'post', 
      dataType: 'json', 
      success: function(dados) { 
        **$('#templateEmpresa').html(dados.empresa);** 
      } 
     )}; 
}); 

當我運行一個console.log($('#templateEmpresa')),我得到:

[context: document, selector: "#templateEmpresa", constructor: function, init: function, selector: ""…] 
+0

你可以在這裏粘貼ajax()結果標題嗎?這樣我們可以正確地看到ajax數據的結構。 – KevinIsNowOnline 2013-04-26 12:15:26

回答

0

出來試試這個代碼: 可能是因爲您正在執行的第一個Ajax調用成功函數內部的第二Ajax調用的範圍問題。

var firstajaxsuccess = 0; 
$.ajax({ 
    url: 'controleFatAcoes.php', 
    type: 'post', 
    dataType: 'html', 
    data: { 
     acao: 'validaenviofat', 
     id_cliente: cli.id_cliente, 
     dt_fat: cli.id_fat 
    }, 
    success: function(data) { 
     firstajaxsuccess = 1; 
    } 
}); 
if(firstajaxsuccess){ 
     $.ajax({ 
      url: 'controleFatAcoes.php', 
      data: {id_cliente: cli.id_cliente, 
        id_fat: cli.id_fat, acao: 'getdadosnf'}, 
      type: 'post', 
      dataType: 'json', 
      success: function(dados) { 
        **$('#templateEmpresa').html(dados.empresa);** 
      } 
     )}; 
} 
+0

ajax請求默認爲異步... – 2013-04-26 12:24:30

+0

div #fatTemplate位於文本區域內,因爲我使用插件tinyMce ... – Diego 2013-04-29 11:44:41

+0

您也可以考慮將$('#templateEmpresa')對象保存到變量中在您的AJAX功能中訪問它。 – Mysteryos 2013-04-30 05:26:10