JQuery工具提示无法使用Jquery模板。需要帮忙

时间:2011-08-25 02:05:10

标签: jquery asp.net-mvc-3 jquery-templates jquery-tooltip

如果我的链接在模板之外而不是工具提示工作正常但是如果它在JQuery模板中根本不起作用。试过很多例子但没有成功。

以下是代码

在网格加载后的Js文件中

ReloadGrid();

$(".hello").tooltip({
    track: true,
    delay: 0,
    showURL: false,
    fade: 250,
    bodyHandler: function () {
        return $($(this).next().html());
    },
    showURL: false
});

在页面上

<script id="cellTemplate" type="text/x-jQuery-tmpl">
    <tr  class="gridRowCursor"  >
        <td class="cellTd ">
            <input type="checkbox" id="deleteCb" />
            <input type="hidden" id="Id_ + ${Id}" class="idField" value="${Id}" />
        </td>
        <td class="cellTd">
            <input id="index" name="index" class="numberField" type="text" value="${IndexOrder}" />
        </td>
        <td  class="cellTdLeft" style="font-size:11px;">

            <a class="hello"  href="#">{{html DisplayName}}</a>

          <div id="tooltip" style="display: none">
                <div>
                   {{html UrlName}}
                </div>
            </div>



        </td>
        <td class="cellTd ">
            <input type="checkbox" id="activeCb" {{if Active}} checked{{/if}} />
        </td>
    </tr>
    <tr id="${Id}" class="gridRow" style="display: none;">
        <td class="cellTdLeft" colspan="5" style="padding-left: 15px; font-size:11px;">
            {{html UrlName}}
        </td>
    </tr>
</script>   


<span class="instructions">Only numeric value is allowed in IndexOrder textbox.</span>
<div class="gridDiv">
<table id="set1" class="gridTable" cellspacing="0" cellpadding="0" >
    <thead>
        <tr class="gridTitleRow">
            <td class="iconLink width36">Delete</td>
            <td class="iconLink width60">Sort Order</td>
            <td class="iconLink width500">Display Name</td>
            <td class="iconLink widthAuto">Active</td>
        </tr>
    </thead>
    <tbody>
    </tbody>
</table>
</div>

使用如下的Live。不工作?

$(".hello").live("tooltip", function() {
     track: true,
delay: 0,
showURL: false,
fade: 250,
bodyHandler: function () {
    return $($(this).next().html());
},
showURL: false

});

1 个答案:

答案 0 :(得分:0)

尝试$(“。hello”)。live(“tooltip”,function(){而不是$(“。hello”)。tooltip({

由于你的hello类元素在加载时不是dom的一部分,你的代码可能正在尝试连接一些尚不存在的东西。 live方法将确保所有具有类hello的未来元素将添加工具提示事件。