1

このスニペットを使用してダイアログを表示します。ただし、これはうまく機能します。タイトルは、テーブルセルを初めてクリックしたときにのみ設定されます。ページを再度リロードした後、タイトルが設定されます-一度だけ。広告無限...

$(document).ready(function() {
    $("td[id^='_ctl0_tbl_content_reportid_']").click(function() {
        var tokens = this.id.split('_');
        var last_index = tokens.length - 1;
        var _dialog = $("#reportid_dialog_" + tokens[last_index]);
        var _title = _dialog.attr("title");

        _dialog.dialog({
            modal: true,
            closeText: 'Hide',
            width: 450,
            title: _title
        });
    });
)};

私はjQuery1.4.2をjQuery-ui1.8.2と一緒に使用しています。たぶん、私が間違っていることを教えてくれる人がいます。

4

2 に答える 2

3

dialog()渡す要素を移動して、セレクターと一致しなくなるようにします。それでいいの?

于 2010-07-22T06:52:05.647 に答える
2

デュアルセレクターの問題が発生していると思います。選択してから:

$("#reportid_dialog_" + tokens[last_index]);

2回目にテーブルセルをクリックしてdialog()を呼び出すと、#reportid_dialog_のインスタンスが2つあり、attrsを設定しようとするとidが衝突することになります。

于 2010-07-22T07:01:08.837 に答える