0

HTMLを取得してページに表示しようとしていますが、何も取得されていないようです...

私のコントローラースクリプト:

function index()
{   
    $this->load->view('ajax_post');
}

public function ajaxify()
{
    $message = "<b>hello</b>";
    echo $message;
}

私のJavaScriptコード:

  $(document).ready(function(){
    $("#click").click( 
    function(){

        $.ajax({
        type: "POST",
        url: "/index.php/ajax_post/ajaxify",
        dataType: "html",
        cache:false,
        success: 
          function(data){
            $("#content").append(html); 
          }

        });

      return false;

    });


});

私はjQuery/AJAXの完全な初心者なので、助けていただければ幸いです。

ありがとう

4

2 に答える 2

2

Ajaxサクセスハンドラー関数:

function(data){
    $("#content").append(html); 
}

名前の付いたパラメータがありますdataが、存在しない変数を追加しようとしています。次のhtmlように変更してみてください。

    $("#content").append(data); 
于 2012-05-18T06:10:42.513 に答える
2

URL が間違って作成されています。Firebug で NET コンソールが表示される場合、404 (または 500) が表示されます。CI でヘルパー関数を使用する (url ヘルパー):

$.ajax({
    type: "POST",
    url: "<?php echo site_url('ajax_post/ajaxify');?>",
    dataType: "html",

または、ドメイン名を含めて手動でビルドします。

$.ajax({
    type: "POST",
    url: "http://www.yourdomain.com/index.php/ajax_post/ajaxify",
    dataType: "html",

URL が正しいコントローラー/メソッド (ajax_post.php コントローラー、カスタム ルートが割り当てられていない場合は ajaxify メソッド) にマップされていることを確認してください。

サイドノート、append()選択した要素の最後に追加します。要素$(selector).html(data);に挿入する場合は、代わりに使用します

于 2012-05-18T05:53:01.977 に答える