2012-11-09 38 views
1

我試圖在通過ajax使用點擊函數加載innerHTML頁後觸發事件,但似乎無法使其工作。我究竟做錯了什麼?加載innerHTML後發生火事件

這裏是我的代碼:

var url; 
var textUrl; 
$('.linkQuestion').on('click', 'a', function() { 
    url = $(this).attr('href'); 
    textUrl = 'https://s3.amazonaws.com/RichText-javascript/richTextEditor.js?AWSAccessKeyId=ASIAJRENG2ALKWZTWOLA&Expires=1352449392&Signature=Z5GHSw5NaBsDC1c2MwWQC32rVKo%3D&x-amz-security-token=AQoDYXdzECEakAIaCSO9XKqmKgVa/ik%2BPvC1ZfmZEtAuf1MyMhvuXFkES0Io1tP3Lpcm85usfK%2B0/Df4yQYbvNhyT8wq9r7SajzJd%2Bx/luK5AvD08gJuNsXwWuH4S/8edxqJp42q4cmstHl3/ylAD%2BGgIP8IAQI5h6ZccsY4fbPpZryBt8VNtu/22qB53dTWjCwpNlPme6PyW7VDtRQlFBNNqcLfb2pYY6/fqI7jiMj8JgD341N%2BvwH4oSQbhApzRn0fRgzbJU6g8TxRCHCcdJs6le1VmF9vaZmLsng7xjtsBkC5h4djaWsufut1lpYRjgTQIUAn5ZS/d93/TmtRC5l9yNByyT0rqU/ukSAiQksUWgoyRq0r/Cp/QyDMg/GEBQ%3D%3D'; 
    $('.answers').load(url, function() { 
    $.getScript(textUrl, function(data, textStatus, jqxhr) { 
     console.log(data); //data returned from getScript 
     console.log(textStatus); //return "success" 
     console.log(jqxhr.status); //200 
    }); 
    }); 
}); 
+0

笏錯誤做u得到? – bipen

+0

我無法讓js在加載ajax後觸發。試圖找出我在做什麼錯誤 – agassi0430

+0

您試圖加載的js拍攝訪問被拒絕,我想你應該有權訪問該js和服務器以獲取該js。 – yogi

回答

0

沒有爲ajax.load 「數據」 第三個參數。

你可能想嘗試通過它爲NULL或一個空對象{}

負載(網址,[數據] [回調])。

但是,如果amazonaws.com不是您正在運行的域,那麼您可能會遇到ajax問題。 @see:同源策略

2

不知道我是否明白你需要做什麼。 getScript成功回調

$('.linkQuestion').on('click', 'a', function() { 

var url = $(this).attr('href'); 
var textUrl = 'https://s3.amazonaws.com/RichText-javascript/richTextEditor.js'; 

$('.answers').load(url, function() { 
    $.getScript(textUrl, function(data, textStatus, jqxhr) { 
     console.log(data); //data returned from getScript 
     console.log(textStatus); //return "success" 
     console.log(jqxhr.status); //200 
    }); 
}); 

});

+0

這絕對是正確的。現在js加載,但它將我鏈接到不同的HTML頁面,而不是使用innerHTML – agassi0430

+0

仍似乎無法使其發揮作用。只是更新了我的代碼 – agassi0430

2

jquery getscript方法也有一個回調函數,就像點擊函數一樣。

下面的例子是從jQuery手冊:

$.getScript("ajax/test.js", function(data, textStatus, jqxhr) { 
    console.log(data); //data returned 
    console.log(textStatus); //success 
    console.log(jqxhr.status); //200 
    console.log('Load was performed.'); 
    //fire your event here! 
}); 
相關問題