ASP.NET中的JQUERY.show()函数

ASP.NET中的JQUERY.show()函数,jquery,asp.net,Jquery,Asp.net,我正在使用jquery1.5.2 当使用.show函数时,它只显示元素的一部分,大约0.3秒,然后元素再次隐藏。这与所有其他形式是一致的。我做错了什么 <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title></title> <script src="Scripts/jquery-1.5.2.js" type="text/javascri

我正在使用jquery1.5.2

当使用.show函数时,它只显示元素的一部分,大约0.3秒,然后元素再次隐藏。这与所有其他形式是一致的。我做错了什么

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
    <script src="Scripts/jquery-1.5.2.js" type="text/javascript"></script>

<script type="text/javascript">
    $(document).ready(function () {

        $('#Button1').click(function () {
            $('#clickmeupdate').show(function () {

            });
        });

    });
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
    <span style="background-color:Blue; display: none" id="clickmeupdate" >Click me to update</span>
        <asp:Button ID="Button1" runat="server" Text="Button" />
    </div>
    </form>
</body>
</html>

$(文档).ready(函数(){
$('#按钮1')。单击(函数(){
$('#clickmeupdate')。显示(函数(){
});
});
});
单击我更新
试试这个:

$('#Button1').click(function () {
        $('#clickmeupdate').show();
});

按钮正在发回,发回时显示设置为无

您可以通过不使用asp.net按钮、仅使用html按钮或添加onClick事件并返回false来停止回发

编辑- 我已经调整了我的答案,因为在你提到的评论中,你需要按钮点击事件

您仍然可以通过使用OnClientClick来运行jQuery来实现这一点

但是,回发仍然存在将跨度重置为不显示的问题,因为首先发生OnClientClick,然后发生onClick

我认为您真的需要为此设置一个AJAX解决方案,或者只需将span设置为runat=server,然后在按钮后面的代码中单击将其设置为visible


我想你最好还是在Asp.NETWeb表单中签出。您可以使用web forms UpdatePanel完成所有这些操作,但使用web forms UpdatePanel可能会更容易。

我认为您的按钮正在发回并导致页面刷新,如果您将return false添加到onclick函数中,它应该可以解决此问题。

我不使用ASP的服务器控件,但我猜
runat=“server”
按钮上的按钮进入其中…我认为TJ在这里有一个要点。查看“查看源”,按钮ID可能不同。在这种情况下,使用ClientId属性引用Id.cheers mate,asp控件不起作用,但html工作得很好,但问题是我在button1_click事件中调用了一个函数,但我需要同时调用一个函数啊,我明白了。在这种情况下,您可能希望在postback.add runat=server上隐藏它,并在span中添加一个id。您可能还可以删除“display:none”并添加visible=false。然后,当按钮返回时,在跨度上设置visible=true。