如何使用asp.net中的链接按钮调用JQuery对话框

时间:2011-05-01 12:29:45

标签: javascript asplinkbutton

我的网站上有一个Jquery对话框。此对话框用于获取用户注释。目前,我正在使用以下代码来执行Javascript函数,并且工作正常:

**<a href="#dialog" name="modal">Rate this</a>**

<div id="dialog" class="window"></div>
<div id="mask"></div> 

它调用的Javascript代码如下:

 $(document).ready(function() {

        //select all the a tag with name equal to modal

        $('a[name=modal]').click(function(e) {
            //Cancel the link behavior
            e.preventDefault();
            //Get the A tag
            var id = $(this).attr('href');

            //Get the screen height and width
            var maskHeight = $(document).height();
            var maskWidth = $(window).width();

            //Set heigth and width to mask to fill up the whole screen
            $('#mask').css({ 'width': maskWidth, 'height': maskHeight });

            //transition effect     
            $('#mask').fadeIn(1000);
            $('#mask').fadeTo("slow", 0.8);

            //Get the window height and width
            var winH = $(window).height();
            var winW = $(window).width();

            //Set the popup window to center
            $(id).css('top', winH / 2 - $(id).height() / 2);
            $(id).css('left', winW / 2 - $(id).width() / 2);

            //transition effect
            $(id).fadeIn(2000);

        });

    });

    //if close button is clicked

    $("input[id$='btnClose']").click(function(e) {
                   e.preventDefault();

        $('#mask').hide();
        $('.window').hide();
    });

由于href没有服务器端点击事件,我需要使用链接按钮调用javascript。我尝试了几种方法但未能得到实际结果。

要结束我需要将此调用**<a href="#dialog" name="modal">Rate this</a>** 更改为“链接”按钮,以便我可以捕获点击事件。

1 个答案:

答案 0 :(得分:0)

您可以使用RegisterStartupScript执行此操作,它允许您在服务器端调用结束时运行Javascript。这里可以找到一个例子&gt; http://www.dotnetcurry.com/ShowArticle.aspx?ID=200

我强烈建议您甚至在用户点击之前尝试操作链接,即加载页面时,而不是将锚标记转换为链接按钮。

当页面加载时,您应该在那时检查请求客户端是否是注册用户。如果他然后显示相同的**<a href="#dialog" name="modal">Rate this</a>**并在

中添加评级表
<div id="dialog" class="window">//Rating stuff goes here</div>

如果您发现用户未注册,则您可以隐藏链接或更改模式div以显示,您未注册,请单击此处进行注册。

希望它有意义。