2
我正在使用Jquery Cluetip作爲我的工具提示。 工具提示內容在Cluetip中加載了AJAX功能。在加載的內容中,我想使用Javascript來增加可用性。Jquery Cluetip - 在提示內使用JavaScript
的index.html:
<img src="edit.png" title="Test" class="popup" rel="ajax-content.html">
onLoad.js:
$('.popup').cluetip({activation: 'click'});
Ajax的content.html:
<script language="javascript" type="text/javascript">
alert('Hello world!');
</script>
Test content.
其結果是,以ol-tip出現在點擊標題:'測試',內容:'測試內容'和沒有警報說'世界您好!'。 FireBug不會顯示腳本和控制檯錯誤。
對此有何幫助?
編輯:
我想通了。
Cluetip對處理AJAX默認動作:
ajaxProcess: function(data) {
data = data.replace(/<(script|style|title)[^<]+<\/(script|style|title)>/gm, '').replace(/<(link|meta)[^>]+>/g,'');
return data;
}
因此,解決方法是:
$('.popup').cluetip({
activation: 'click'.
ajaxProcess: function(data) {
return data;
}
});
我不知道爲什麼Cluetip刪除所有腳本/風格/標題,可能防止錯誤。
Cluetip默認提供這些選項。我這樣做是爲了提高我的應用程序的可用性(例如工具提示內的輸入字段上的日期選擇器)。爲什麼它不是一個好主意? – 2012-02-14 19:09:36
它通常是一個壞主意,通過ajax包含js文件並運行它們,它通常是一個更好的方法來做到這一點。例如:將一個類'datepicker'添加到所有需要日期選擇器的輸入。在cluetip'ajaxprocess'提供的回調中,在你新添加的html中找到'.datepicker'並添加datepickers。 – mkoryak 2012-02-14 20:50:22