二楼说的是一种方法,还有就是 设置服务端控件 ,设置为静态id,就可以直接$("#btnSave").click(funciton(){alert("hello world!")});
<asp:Button ID="btnSave" runat="server" Text="Button" ClientIDMode="Static" />
我发现一个问题,用vs2012写的就可以出来,但是用vs2010写的就是出不来。有这方面的经验吗?
@小玥: vs2010也是可以的,我发的就是用10写的,推测你的项目原先不是10的,后来只是用10开发,framework的版本还是停留在3.5或者3.5之前的版本,要想用clientIdModel就得将framework改为4.0,否则只能为二楼说的方法
@秋壶冰月: 我刚才在10里面新建了一个项目,试了一下,还是不行。新建的12的就可以。。。
@小玥: 这个就不清楚是什么问题了!但10肯定支持的,你可以试着用12的项目将.net framework改为4.0,试试看看可以不!我没有遇到过这种状况
@秋壶冰月: 你看我就是这样写的,是不是哪里有问题?
@小玥: 1.可以这样,给button OnClientClick事件,这个事件如果满足 就return true,否则就return false,return false的时候就不行服务端的后台事件
<asp:Button ID="Button1" runat="server" Text="Button" OnClientClick="hh();" onclick="Button1_Click"/>
2.可以试着用Jquery validate验证组件,实现验证这一块的功能
@秋壶冰月: 可以了,太厉害了,果然是大神啊。我当时是想做一个点击登录的时候,用jQuery UI弹出层实现登录框,但是在后台的时候文本框里面的值一直是空的,获取不到值。虽然我现在不那么做了,我还是想听听你有什么好的想法。交流一下。
@小玥: 这个也好做,先把登录的div(用户名、密码、验证码等),简单的 ,可以用textbox实现
不可能,前端是前端,后台是后台,你可以在前端事件中去调用后台方法,以实现你说的触发后台事件.
哎....那样太复杂了,后面还牵扯到很多东西,根本就没法弄....
因为服务器控件在编译时的ID是会变化的,需要用ClientID获取编译后的ID,这样写:
$("#<%=btn_login.ClientID %>").click(function () {
alert("aaa");
})
昨天晚上我试过这个方法,可以实现,但是它弹出的这个层一闪而过就没有了....很郁闷
@小玥: return false; 就不会一闪而过了
$("#<%=btn_login.ClientID %>").click(function() { alert("aaa"); return false; })
@小玥: 为什么我没有一闪而过。。。。
@七步、: 加上return FALSE?我晚上回去试试.谢了哈~
@小玥: 我发现一个问题,用vs2012写的就可以出来,但是用vs2010写的就是出不来。有这方面的经验吗?
1.理解runat对控件的影响
2..net控件生成代码的原理都搞不懂,就别用控件了。