C# ASP.NET在单击按钮时显示div
我试图在单击按钮时显示加载div,但它目前不起作用 Javascript:C# ASP.NET在单击按钮时显示div,c#,javascript,asp.net,html,C#,Javascript,Asp.net,Html,我试图在单击按钮时显示加载div,但它目前不起作用 Javascript: <script type="text/javascript"> $(document).ready(function (e) { $('#BtnSend').click(function () { $('#<%= loading.ClientID %>').toggle("slow"); }
<script type="text/javascript">
$(document).ready(function (e) {
$('#BtnSend').click(function () {
$('#<%= loading.ClientID %>').toggle("slow");
});
});
</script>
$(文件).ready(函数(e){
$('#BtnSend')。单击(函数(){
$('#')。切换(“慢速”);
});
});
分区:
按钮:
<asp:Button ID="BtnSend" runat="server" Text="SEND"
onclick="BtnSend_Click" CssClass="pressbutton2" Height="36px" ClientIDMode="Static" />
div被设置为runat server,这样我也可以通过代码更改其可见性。我尝试添加一个prevent默认值,因为下面描述的代码将在加载div显示之前回发
<script type="text/javascript">
$(document).ready(function (e) {
$('#<%= BtnSend.ClientID %>').click(function (e) {
e.preventDefault();
$('#<%= loading.ClientID %>').toggle("slow");
});
});
</script>
这意味着div不存在,因为它不是服务器端的输出。当页面加载时,查看视图源代码,它不会在那里隐藏,只是不在那里。删除
visible=“false”
并使用CSS将其隐藏以开始。使用asp按钮的onClientClick
。然后使您调用的jquery函数BtnSend\u单击
如果您想通过客户端执行此操作:
jQuery
function BtnSend_Click () {
$('#<%= loading.ClientID %>').toggle("slow");
}
ASP按钮
<asp:Button ID="BtnSend" runat="server" Text="SEND"
onClientClick="BtnSend_Click" CssClass="pressbutton2" Height="36px" ClientIDMode="Static" />
<asp:Button ID="BtnSend" runat="server" Text="SEND"
onClick="BtnSend_Click" CssClass="pressbutton2" Height="36px" ClientIDMode="Static" />
ASP.Net AJAX库有一个UpdateProgress
控件,听起来很适合您的需要。它只是一个定制div的css类。但仍然不起作用。哦,我知道了,您为div创建了ClientID,但没有创建按钮!更新代码段实际上您有ClientMode static,所以可能不是这样,而是明显的错误问题。您指的是哪一个?指的是设置为static的clientID。我删除了visible=“false”和set style=“display:none;”但是当单击按钮时,div仍然没有显示。您是否考虑过使用类似jQuery的插件?您是否检查了在ASP.NET生成的HTML中,按钮是否保留了aspx文件中指定的ID?我100%确信,当按钮是自定义用户控件的一部分时,您在文件中看到的ID与在页面中看到的ID不同。注意:该ID是一个服务器控件,[通常]与ClientID不同。ClientID(也称为DOM ID)使用控件ID、控件层次结构和映射规则来创建派生的ClientID。如果javascript关闭,则从两侧进行验证您想在服务器端还是客户端执行此操作?如果您想要客户端,您不需要使用onClick
,因为它会在代码后面查找函数并运行该函数;而是使用onClientClick
,将jquery设置为具有名称的函数并调用该名称。如果您确实需要服务器端,请向我们显示服务器端代码。
<asp:Button ID="BtnSend" runat="server" Text="SEND"
onClientClick="BtnSend_Click" CssClass="pressbutton2" Height="36px" ClientIDMode="Static" />
protected void BtnSend_Click(object sender, EventArgs e){
loading.Visibility = 'visible' //not sure on syntax to show it in code behind off the top my head
}
<asp:Button ID="BtnSend" runat="server" Text="SEND"
onClick="BtnSend_Click" CssClass="pressbutton2" Height="36px" ClientIDMode="Static" />