私はjqueryにまったく慣れていないので、このようなことが明白でないことを願っています。解決策を探しましたが、私の質問に固有の解決策は見つかりませんでした。
jquery .getを使用して15秒ごとに更新されるテーブルがあり、テーブル要素を追加する従来のaspページがあります。
$(document).ready(function() {
refresh();
var int = self.setInterval("refresh()",15000);});
function refresh(){
$("table").tablesorter();
$("table tbody tr").remove();
//$("#ajax-append").click(function() {
$.get("assets/ajax-content.asp", function(html) {
// append the "ajax'd" data to the table body
$("table tbody").append(html);
// let the plugin know that we made a update
$("table").trigger("update");
});
return false;}
これは正常に機能します。ここの例をガイドとして使用しました:http: //tablesorter.com/docs/example-ajax.html
唯一の問題は、「ajax'ed」テーブルの列の1つに、onclickを含むimgタグがあることです。
function openMessage(strID){
if (strID != ""){
id = strID;
//alert(id);
$('#dialog').dialog('open');
}
ダイアログでid変数を使用します。このコードが機能することはわかっています。なぜなら、jqueryテーブルソーターの前(昨日)は数か月間使用されていたのですが、まだ(本番環境で)使用されているからです。
FireBugから取得するエラーは次のとおりです。
$( "#dialog")。dialogは関数ではありません[Break On This Error] $('#dialog')。dialog('open');
私は彼らがテーブルソーターのデモから推奨しているのと同じバージョンのjqueryを使用しています: http://tablesorter.com/jquery-latest.js これは非常に新しいものではありません。jqueryファイルを使用するかどうかに気づきました:
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.js"></script>
ソーターが機能しません。さらに、UIを追加すると、次のものが含まれます。
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/jquery-ui.min.js">/script>
<link href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/themes/base/jquery-ui.css" rel="stylesheet" type="text/css"/>
並べ替えは機能しません。jquery include(uiではなく)を切り替えると、.get()は機能せず、テーブルヘッダーのみが表示されます。
私の質問は、jqueryとuiのバージョンは、それらが動作できるものを区別していますか?私のメッセージダイアログは非常に単純です。ダイアログを開くだけで、クリックされたボタンに応じて、ajaxを使用して読み取り/書き込みをデータベースに送信します。UIを含めると、テーブルソーターのバージョンのjqueryが機能しないのはなぜですか?回避策はありますか?
私のコードにそれを壊している可能性のあるものはありますか?
よろしくお願いします!