try something like the following (your need to replace the IDs, didn't test, so it might not work):<form runat="server">
<asp:Button id="btn" runat="server" OnClick="YourServerCode" />
</form><script language="javascript">
function setState()
{
document.getElementById("YourID").disabled=true;
}
</script><script language="VB" runat="server">Sub Page_Load(sender as Object, e as EventArgs)
btn.Attributes.Add("onclick","javascript:setState()")
End SubSub YourServerCode(sender as Object, e as EventArgs)
Response.Write("button clicked")
End Sub
</script>
<asp:Button id="btn" runat="server" OnClick="YourServerCode" />
</form><script language="javascript">
function setState()
{
document.getElementById("YourID").disabled=true;
}
</script><script language="VB" runat="server">Sub Page_Load(sender as Object, e as EventArgs)
btn.Attributes.Add("onclick","javascript:setState()")
End SubSub YourServerCode(sender as Object, e as EventArgs)
Response.Write("button clicked")
End Sub
</script>
解决方案 »
- 文件上传问题,急求解决·
- 请教一个网站首页直接登录企业邮箱的问题
- 请教:gridview中updatecommand如何使用?
- Session和Cookie的作用
- Vb.NET 做的web程序中, 怎么样可以根据某一个字段内容不同(比如:字段=1或0)而让datagridview中的行的记录变颜色呢?
- .net中panel 上如何引入页面
- vs2005中如何建立分层架构的程序
- GetLocalResourceObject只能用在xx.aspx.cs文件里?
- 用水晶报表10的打印怎么没打印的设置选项呢?
- 返回记录集为空时的异常情况怎么处理?
- 请问怎么样可以动态给LISTBOX添加数据?
- 那位大哥帮我分析段代码?
还真是能解决不少问题的说
呵呵
{
document.getElementById("btn").disabled=true;
}
就像这个论坛,在点下发出回复之后先在客户端执行*.disabled=true,之后才提交数据到数据库,这样做的原因是防止用户重复点击“发出回复”按钮
2.另一个帖子的不是已经行了吗?
我都试过了。
3.可以这样做,当为空是 disabled=false
不为空时disabled=true,注意,还是
与1是一样的 ,一定要清空
我的用意是防止执行一个很慢的处理时,用户点击多次导致连续处理两次。比如我做一个上传页,上传大文件是肯定很慢,这时候用户就会多次点击“上传”按钮,如果把disabled=false写在服务器端是起不到作用的,,,如果能做到点下按钮之后执行.disabled =true,再执行服务器端的Click事件就好了问题是如果在客户端执行了.disabled=true后,服务器端按钮对应的Click事件就不会被执行了。大家做做个完整的例子给我吗
<script language="javascript">
function aaa()
{
document.getElementById("YourButton").disabled=true;
_doPostBack("YourHyperLinkID","");
}
/script>
<script language="VB" runat="server">
Sub YourServerCode(sender as Object, e as EventArgs)
Response.Write("button clicked and button disalbed")
End Sub
</script>
<input type=button id="YourButton" onclick="aaa()">
<asp:button id="button1" runat="server" OnClick="YourServerCode" />该了一下别人的
点击哪个按钮啊?
这个
用html控件加上一个runat=server的按钮。
举例:
<form id="Form1">
<input type="button" id="btnSubmit" name="btnSubmit" onClick="javascript:btnDisabled();" value="提交" runat="server"/>
</form>
<script langugage="javascript">
function btnDisabled()
{
document.Form1.btnSubmit.disabled=true;
}
</script> 一切ok,效果和楼主想要的一样。
你的当然有用了,但是你的button还要求在
disabled响应事件的 to 楼主
不好意思,那个不对,我在看看
这样是没错的,可是
__doPostBack('Yourdd','');
后又有刷新的 所以,("btn").disabled 又为 false 了
<%@ Page Language="vb" AutoEventWireup="false" Codebehind="w1.aspx.vb" Inherits="Web1.w1"%>
<%@ Register TagPrefix="iewc" Namespace="Microsoft.Web.UI.WebControls" Assembly="Microsoft.Web.UI.WebControls, Version=1.0.2.226, Culture=neutral, PublicKeyToken=31bf3856ad364e35" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
</HEAD>
<body ms_positioning="GridLayout">
<TABLE height="300" cellSpacing="0" cellPadding="0" width="154" border="0" ms_2d_layout="TRUE">
<TR>
<TD width="0" height="0"></TD>
<TD width="10" height="0"></TD>
<TD width="144" height="0"></TD>
</TR>
<TR vAlign="top">
<TD width="0" height="15"></TD>
<TD colSpan="2" rowSpan="2">
<form runat="server" ID="Form1">
<TABLE height="137" cellSpacing="0" cellPadding="0" width="288" border="0" ms_2d_layout="TRUE">
<TR vAlign="top">
<TD width="80" height="112"></TD>
<TD width="136"></TD>
<TD width="72"></TD>
</TR>
<TR vAlign="top">
<TD height="25"></TD>
<TD>
<input type=submit value="sdfsd" OnClick="setState()" /></TD>
<TD>
<asp:LinkButton ID="Yourdd" Runat="server" OnClick="YourServerCode" /></TD>
</TR>
</TABLE>
</form>
</TD>
</TR>
<TR vAlign="top">
<TD width="0" height="285"></TD>
<TD>
<script language="javascript">
function setState()
{
document.getElementById("btn").disabled=true;
__doPostBack('Yourdd','');
}
</script>
</TD>
</TR>
</TABLE>
</body>
</HTML>
我的不需要再在服务断响应什么事件,
也不需要考虑什么刷不刷新的问题。
我的是在一点击按钮就失效的,
然后再执行按钮的事件,
我一直都这么用。
<input type="button" id="btnSubmit" name="btnSubmit" onClick="javascript:btnDisabled();" value="提交" runat="server"/>
</form>
<script langugage="javascript">
function btnDisabled()
{
document.Form1.btnSubmit.disabled=true;
}
</script>
用你button 可以实现服务器端的事件吗?
在button失效之后,你有什么联系方式吗?
讨论一下
看了一下别人的代码,他们好像是写在<form onsubmit=** runat="server">里。我要的效果就是点下“upload”按钮后,在客户端让按钮变为false,再执行服务器端的
Sub UploadFile事件,我试了好多方法都不行。。因为按钮为FALSE后,按钮所对应的OnClick事件就无法执行了。
<Html>
<Body BgColor=White>
<H3>文件上传 -- 上传一个文件<Hr></H3><Form Enctype="multipart/form-data" runat="server">
请输入完整文件路径:
<Input Type="File" id="FileUp" runat="server"><P>
<asp:Button runat="server" Text="Upload" OnClick="UploadFile" />
<Hr>
<asp:Label runat="server" id="Msg" />
</Form>
</Body>
</Html><script language="VB" runat="server"> Sub UploadFile(sender As Object, e As EventArgs)
Dim file As HttpPostedFile = FileUp.PostedFile If file.ContentLength <> 0 Then
Msg.Text = "大小: " & File.ContentLength
Msg.Text &= "<br>类型: " & File.ContentType
Msg.Text &= "<br>名称: " & File.FileName Dim FileSplit() As String = Split( File.FileName, "\" )
Dim FileName As String = FileSplit(FileSplit.Length-1)
File.SaveAs( Server.MapPath(FileName) )
Else
Msg.Text = ""
End If
End Sub</script>
然后再执行按钮的事件,
我一直都这么用。
你的事件在哪里?
=======================
你是指按钮执行的事件吗?
跟平时一样,
想放哪就放哪的。也就是说,
按钮的事件和这个javascript没有任何联系,
也不需要btn.Attributes.Add....
我的方法只能这样用:aspx文件:<Html>
<Body BgColor=White>
<H3>文件上传 -- 上传一个文件<Hr></H3><Form Enctype="multipart/form-data" runat="server">
请输入完整文件路径:
<Input Type="File" id="FileUp" runat="server"><P>
<input type="button" id="btnSubmit" name="btnSubmit" onClick="javascript:btnDisabled();" value="上传" runat="server"/>
<Hr>
<asp:Label runat="server" id="Msg" />
</Form>
</Body>
</Html>
<script langugage="javascript">
function btnDisabled()
{
document.Form1.btnSubmit.disabled=true;
}
</script>
.cs文件:..................
Sub UploadFile(sender As Object, e As EventArgs)
Dim file As HttpPostedFile = FileUp.PostedFile If file.ContentLength <> 0 Then
Msg.Text = "大小: " & File.ContentLength
Msg.Text &= "<br>类型: " & File.ContentType
Msg.Text &= "<br>名称: " & File.FileName Dim FileSplit() As String = Split( File.FileName, "\" )
Dim FileName As String = FileSplit(FileSplit.Length-1)
File.SaveAs( Server.MapPath(FileName) )
Else
Msg.Text = ""
End If
End Sub...........................注意:提交的按钮必须是html控件加一个ruant=server
用asp控件是没有效果的
you are super!!
可以做个朋友吗?
可以,我的MSN是
[email protected]
我试过一个最简单的方法:
用html控件加上一个runat=server的按钮。
举例:
<form id="Form1">
<input type="button" id="btnSubmit" name="btnSubmit" onClick="javascript:btnDisabled();" value="提交" runat="server"/>
</form>
<script langugage="javascript">
function btnDisabled()
{
document.Form1.btnSubmit.disabled=true;
}
</script> 一切ok,效果和楼主想要的一样。
++++++++++++++++++++++++++++++++
这段可以做到。。