2015-09-05 90 views
-1

當我呼叫$("#editor1").val(data);外部jQuery.ajax數據顯示在textarea的文本框中。當我嘗試把它放在jQuery.ajax的成功函數中時,什麼也不顯示。textarea不會在ajax調用中更改

有人可以回答爲什麼以及如何改變它的工作?

下面是代碼:

<script> 
function getFromServer(id){ 
var data = {"id" : id}; 
jQuery.ajax({ 
     url:"http://localhost/amsprojektgit/amsprojekt/admin/web/ajaxg/"+id, 
     method: "post", 
     data: data, 

     success: function(data) { 
     $("#editor1").val(data); 
     }, 

     error: function(){ 
      alert("Wystąpił nieoczekiwany problem!"); 
     } 
     }); 


    } 

</script> 

這顯示了相反:

<script> 
    function getFromServer(id){ 
     var data = {"id" : id}; 
    $("#editor1").val("Hi"); 

     jQuery.ajax({ 
     url: "http://localhost/amsprojektgit/amsprojekt/admin/web/ajaxg/"+id, 
     method: "post", 
     data: data, 
     success: function(data) { 

     }, 
     error: function(){ 
      alert("Wystąpił nieoczekiwany problem!"); 
     } 
     }); 


    } 


    </script> 
+1

你的ajax是否正確啓動?什麼是數據值? –

+0

這是否可以在線工作(即不是本地主機)? – rybo111

+0

你可以嘗試**文本()**,而不是** val()** –

回答

0

確定。我解決了它。問題可能是我正在使用CKeditor和textarea進行文本編輯。正確的代碼應該是:

function getFromServer(id){ 
var data = {"id" : id}; 
var a; 

jQuery.ajax({ 
    url: "http://localhost/amsprojektgit/amsprojekt/admin/web/ajaxg/"+id, 
    method: "get", 
    success: function(response) { 
    CKEDITOR.instances.editor1.setData(response); 


    }, 
    error: function(){ 
     alert("Wystąpił nieoczekiwany problem!"); 
    } 
}); 
} 

感謝您的建議。

0

試試這個代碼

<script> 
    function getFromServer(id){ 
    var data = {"id" : id}; 
    jQuery.ajax({ 
      url:"http://localhost/amsprojektgit/amsprojekt/admin/web/ajaxg/"+id, 
      method: "post", 
      data: data, 
      success: function(responsedata) { 
      $("#editor1").val(responsedata); 
      }, 
      error: function(){ 
       alert("Wystąpił nieoczekiwany problem!"); 
      } 
      }); 
     } 
    </script> 
+1

所以你擔心內部成功回調'數據'是指在主函數體中定義的'data',並且使用不同的名稱可以解決問題?我不這麼認爲。原因應該是別的。 –

+0

這不是數據變量的問題。我也可以製作$(「#editor1」)。val(「Hello」);問題是,當我把它放入成功函數時,它不會顯示出來。當我把它放在ajax外面時,它顯示出來。 – user2779917

+0

我同意這不是根本原因。 我試着用一個例子(http://jsfiddle.net/kishoresahas/qqdspffu/1/)。它工作正常。 –