使用服务器控件是不是就不能使用前端的Javascript? 你的OnClick当然只能有一个事件,不过你也可以在服务器端的代码里调用Js。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 能,如果你为<asp:button>增加客户端脚本的onclick事件那么在客户端会先执行你的脚本代码,如果脚本返回为true ,那么会返回服务器端执行服务器端的onclick事件。 To: liuzhonghe(呆头鹅) 我原来这样做好像不行啊,能具体说说你是怎么做的吗? 例如:this.btnDel.Attributes.Add("onclick","javascript:return confirm('确认删除?');");当点击确定也就是返回true时,才执行private void btnDel_Click(object sender, System.Web.UI.ImageClickEventArgs e){ .......} 各位似乎有些误解我的意思了。之所以要使用前端Javascript就是希望页面在返回伺服端之前就先执行,在服务器端执行是不同的意义。liuzhonghe兄我不大懂你的意思,如果在伺服端控件的onclick中写上前端Javascript的函数﹐基本上在编译上就已过不了了,而且如果不仅要执行前端的javascript又要触发后端的click事件那会是什么写法呢?我举个例子好了<html><head> <title>Untitled</title> <script language="JavaScript"> function Cal(N1,N2,N3){ sFlag=true; if(N1.value==''){ sFlag=false; alert('数值一不得为空'); N1.focus(); }else if(N2.value==''){ sFlag=false; alert('数值二不得为空'); N2.focus(); } if(sFlag){ N3.value=N1.value+N2.value; }else{ return sFlag; } } </script></head><body> <form runat="server"> 数值一:<asp:TextBox id="Num1" runat="server"/> + 数值二:<asp:TextBox id="Num2" runat="server"/> = <asp:TextBox id="Total" runat="server"/> <asp:Button id="okBtn" runat="server" Onclick="Cal(document.all.Num1,document.all.Num2,document.all.Total)"/> </form></body></html>以这个例子来说在<asp:Button>中的Onclick我所呼叫的是前端Javascript, 但这样子连编译都无法通过,那么是不是代表用了伺服端控制器就无法使用前端的Javascript了呢?还是有什么其它的解法?(这个例子我只是为了表达呼叫前端javascript用,请不用对于Javascript中所代表的功能来讨论。) <asp:Button id="okBtn" runat="server" Onclick="Cal(document.all.Num1,document.all.Num2,document.all.Total)"/>------>>>>><asp:Button id="okBtn" runat="server" Onclick="return Cal(document.all.Num1,document.all.Num2,document.all.Total) ;"/>加个return 和一个分号。看可不可 不行,加上return仍然是属于语法错误。.Net编译时如果是伺服端控件对于onclick的事件似乎只能认同伺服端的click事件,加上return或者函式中有括孤都属于语法错误。 <input type = Button id="okBtn" runat="server" Onclick="return Cal(document.all.Num1,document.all.Num2,document.all.Total) ;"/> 如何在网页加载完成前显示进度 找一个控件 文本框,历史记录提示功能 javascript实现TreeView选中子结点,父结点也选中 我给DataView绑定数据的时候,那个列名怎么显示不出来啊? WebPart问题,求救!!!!!!!!!!!!!! repeater中是否有cells? 急,简单的问题,\t代表什么?忘了 实现多张图片的上传 .net 点击imgbutton后不刷新页面 数据库连接问题: 这分倒得也太明显了吧?还不给别人阿灰的分?
我原来这样做好像不行啊,
能具体说说你是怎么做的吗?
this.btnDel.Attributes.Add("onclick","javascript:return confirm('确认删除?');");
当点击确定也就是返回true时,才执行
private void btnDel_Click(object sender, System.Web.UI.ImageClickEventArgs e)
{
.......
}
之所以要使用前端Javascript就是希望页面在返回伺服端之前就先执行,在服务器端执行是不同的意义。liuzhonghe兄我不大懂你的意思,如果在伺服端控件的onclick中写上前端Javascript的函数﹐基本上在编译上就已过不了了,而且如果不仅要执行前端的javascript又要触发后端的click事件那会是什么写法呢?我举个例子好了<html>
<head>
<title>Untitled</title>
<script language="JavaScript">
function Cal(N1,N2,N3){
sFlag=true;
if(N1.value==''){
sFlag=false;
alert('数值一不得为空');
N1.focus();
}else if(N2.value==''){
sFlag=false;
alert('数值二不得为空');
N2.focus();
}
if(sFlag){
N3.value=N1.value+N2.value;
}else{
return sFlag;
}
}
</script>
</head><body>
<form runat="server">
数值一:<asp:TextBox id="Num1" runat="server"/> +
数值二:<asp:TextBox id="Num2" runat="server"/> =
<asp:TextBox id="Total" runat="server"/>
<asp:Button id="okBtn" runat="server" Onclick="Cal(document.all.Num1,document.all.Num2,document.all.Total)"/>
</form>
</body>
</html>以这个例子来说在<asp:Button>中的Onclick我所呼叫的是前端Javascript, 但这样子连编译都无法通过,那么是不是代表用了伺服端控制器就无法使用前端的Javascript了呢?还是有什么其它的解法?
(这个例子我只是为了表达呼叫前端javascript用,请不用对于Javascript中所代表的功能来讨论。)
<asp:Button id="okBtn" runat="server" Onclick="return Cal(document.all.Num1,document.all.Num2,document.all.Total) ;"/>加个return 和一个分号。看可不可
.Net编译时如果是伺服端控件对于onclick的事件似乎只能认同伺服端的click事件,加上return或者函式中有括孤都属于语法错误。