欢迎来到Doc100.Net免费学习资源知识分享平台!
您的位置:首页 > 程序异常 >

怎样让服务器控件中的button先执行前台javascript函数,再引发后台的click事件?解决办法

更新时间: 2015-02-07 02:44:09 责任编辑: Author_N8

 

怎样让服务器控件中的button先执行前台Javascript函数,再引发后台的click事件?
当用户点击Button时,让它先去执行前台的JavaScript函数,再执行它的click响应事件代码。
我用了两种方法,都不行:
1.
<script type="text/javascript">
 function check()
 {
  .....
  form1.submit();
 }
</script>
......
<asp:Button ID="Button1" runat="server" Text="提交" OnClick="Button1_Click" onmousedown="check();" />
2.
<script type="text/javascript">
 function check()
 {
  .....
  return true;
 }
</script>
......
<asp:Button ID="Button1" runat="server" Text="提交" OnClick="Button1_Click" onmousedown="return check();" />
我知道在form的onsubmit中调用js函数可以实现这个功能,但是我要做用户控件,因此没办法在form声明处添加这个调用。
请问高手们有什么方法实现这样的功能?

--参考方法--
HTML code
<asp:Button ID="Button1" runat="server" Text="提交" OnClick="Button1_Click" OnClientClick="return check();" />

--参考方法--
探讨
HTML code<asp:Button ID="Button1" runat="server" Text="提交" OnClick="Button1_Click" OnClientClick="return check();" />

--参考方法--
用 OnClientClick 属性,OnClientClick="return yourFun()"
--参考方法--
例如:

HTML code
<script type="text/javascript">
function FrescoAdd()
{
    var reg=/^\d*$/;
    if (quanity.value.trim() == ''|| (!reg.test(quanity.value)) || quanity.value <1 )
    {
        alert('请输入一个正确的产品数量值!');
        quanity.focus();
        return false;
    }        
    __doPostBack('ctl00$MainContentPlaceHolder$btnNext','')
}
</script>

<input id="btnNext" runat="server" onclick="return FrescoAdd();" onserverclick="btnNext_ServerClick" type="button" value="下一步" />

--参考方法--

 注意你自己打开你的网站,在IE里查看这个源代码。看你的btnNext控件的 __doPostBack
 是什么,就在JS中写成什么,我的用了母版就成了
__doPostBack('ctl00$MainContentPlaceHolder$btnNext','')

 这个地方你要根据你自己的来
上一篇:上一篇
下一篇:下一篇

 

随机推荐程序问答结果

 

 

如对文章有任何疑问请提交到问题反馈,或者您对内容不满意,请您反馈给我们DOC100.NET论坛发贴求解。
DOC100.NET资源网,机器学习分类整理更新日期::2015-02-07 02:44:09
如需转载,请注明文章出处和来源网址:http://www.doc100.net/bugs/t/975525/
本文WWW.DOC100.NET DOC100.NET版权所有。