日期:2014-05-18  浏览次数:20382 次

asp.net 中不同的button
今天遇到一个问题了,大家给看一下啊:
比如说:一个页面中
textbox   (1个)
RequiredFieldValidator(1个)
button(1个)
先对textbox进行验证,通过后,button的onclick   事件调用一个javascript   的一个函数InitPage(一个无工具栏和菜单栏的新页面)
其中:
<script   language= "Javascript "     >  
function   InitPage()
{      
window.open( "mainPage.aspx ", " ", "toolbar=no,location=no,directories=no,menubar=no,scrollbars=no,resizable=yes,status=no,top=0,left=0,width=640,height=480 ");      
}      
</script>  
且:  
<asp:Button   ID= "btnLogin "   runat= "server "   OnClick= "InitPage() "   />

可运行说:没有InitPage()的定义,去掉()也不可以,在page_load()里加入
btnLogin.attributes.add( "OnClick ", "InitPage() ")也不可以
然后 <script   language= "Javascript "     > 修改成
<script   language= "Javascript "   runat= "server ">
这回提示又换成了:由于先前已在此页中指定了另一种语言(或者由   CodeFile   属性暗示),因此无法使用“Javascript "
然后参考了别人的东西看了一下,其中button改成:
<input   id= "btnLogin1 "   type= "button "   onclick= "InitPage() "   />
这回是可以认javascript定义的函数了,可是在点button的时候,那个RequiredFieldValidatori又不起作用了,不对那个textbox进行验证了
天啊,我都晕死了,刚学,还希望各位高手帮忙啊,给一个系统些的回答吧!!
等......
等等.....
等等等....
............




------解决方案--------------------
1。使用 OnClientClick 属性
<asp:Button ID= "btnLogin " runat= "server " OnClientClick= "InitPage() " />


2。
<script language= "Javascript " runat= "server "> 不要 runat= "server "