q提示并动态添加元素问题

时间:2013-11-26 09:35:35

标签: javascript asp.net jquery qtip

我有UpdatePanel页面,我点击页面添加了一些表格 在这些新添加的元素中,我有必须使用qTip的图像。

我有这个:

$(document).ready(function () {    
        $('.ttip').qtip({
            content: $(this).attr('tooltip'),
            show: 'click',
            hide: 'click',
            position: {
                my: 'top right',
                at: 'bottom center'
            },
            style: { classes: 'ui-tooltip-light' }
        });
    });

这适用于在开始时可见的元素 使用qTip的所有元素都具有runat="server"属性 但是当我用类ttip添加新元素时,它不起作用。

Exloring我看到在开始中可见的元素具有属性:

data-hasqtip="6"

但动态添加的元素没有此属性。

我该如何解决这个问题? 如何让它以某种方式生活?

基于答案的更新

我在代码中添加了这个,我将元素显示在其中:

// Button click handler that add new element to page
public void AddNewElement(Image image)
{
    image.Visible = true;
    image.ToolTip = "blah";
    ScriptManager.RegisterStartupScript(this.Page, this.GetType(),
                        "tmp",
                        @"<script type='text/javascript'>
                            $('.ttip').filter(function(){return !$(this).data('qtip')}).qtip(
                                content: $(this).attr('tooltip'),
                                show: 'click',
                                hide: 'click',
                                position: {
                                    my: 'top right',
                                    at: 'bottom center'
                                },
                                style: { classes: 'ui-tooltip-light' }
                            );
                        </script>", 
                        false);
}

但它仍然不起作用:(

1 个答案:

答案 0 :(得分:2)

添加新元素后,重新初始化qTip插件:

$('.ttip').filter(function(){return !$(this).data('qtip')}).qtip(...);