2012-04-11 65 views
0

我需要通過jquery ajax將文本區域的內容加載到div中。內容首先通過jquery加載到div中。當按下按鈕時,點擊功能通過ajax將內容插入到數據庫中,然後將內容重新加載到div中。它有效,但似乎有點零星。我的問題是,有沒有更好的方法來做到這一點。通過jquery ajax將內容從文本區域加載到div中

我基本上是試圖提交身份進入一個時間表而無需刷新頁面

<script> 
    $.ajaxSetup ({ cache: false });  
    var ajax_load = "<div align='center'><img src='img/ajax-loader.gif' alt='loading...' /></div>"; 
    var loadUrl = "ajax/ajax.php"; 
    var loadMe = "functions/status.php"; 
    $("#result").html(ajax_load).load(loadUrl); 

    $("#share-but").click(function() { 
     var status = $("textarea#status").val(); 
     $.post(
      loadMe, 
      { status: status, user_id: '<?php echo "10" ?>' }, 
      "html" 
     ); 
     $("#result").html(ajax_load).load(loadUrl); 
     $("textarea").val('Share an update'); 
    }); 
</script> 
+0

不要preprend ID選擇器與tagName,它負面影響性能 – Baz1nga 2012-04-11 09:23:38

回答

0

我猜你應該在回調函數,當服務器響應您的POST請求jQuery的執行做您的更新

因此您的代碼應改爲

<script> 
    $.ajaxSetup ({ cache: false });  
    var ajax_load = "<div align='center'><img src='img/ajax-loader.gif' alt='loading...' /></div>"; 
    var loadUrl = "ajax/ajax.php"; 
    var loadMe = "functions/status.php"; 
    $("#result").html(ajax_load).load(loadUrl); 

    $("#share-but").click(function() { 
     var status = $("#status").val(); 
     $.post(
      loadMe, 
      { status: status, user_id: '<?php echo "10" ?>' }, 
      function(htmlData) 
      { 
       $("#result").html(htmlData); 
       $("textarea").val('Share an update'); 
      }, 
      "html" 
     ); 

    }); 
</script> 

因此在這裏你的帖子迴應的HTML數據,它被設置在result container

+0

指針和快速響應的歡呼 - 得到這個工作 – Jeff 2012-04-12 08:16:55

+0

請記得upvote /標記爲答案 – Baz1nga 2012-04-12 09:00:31

相關問題