asp.net button的OnClientClick事件

大致是这个意思:<divid="test"></div><asp:buttonid="btn"text="test"onClientClick="returntest()... 大致是这个意思:
<div id="test"></div>
<asp:button id="btn" text="test" onClientClick="return test() onclick="btn_click"></asp:button>
<script>
function test()
{
alert("test");
document.getElementById("test").innerHTML="showtest";
}
</script>
执行之后alert可以显示出来,但是div的值不改变 如果要是设置div display属性的话是闪一下就没了 但如果把return 的值改为false的话就可以显示,但是那样就不执行onclick事件了 该怎么解决啊。。。。。
展开
 我来答
画角连城
2012-08-10 · TA获得超过773个赞
知道小有建树答主
回答量:224
采纳率:0%
帮助的人:310万
展开全部
我给你解释一下你遇到的现象:
如果你的test()函数最后不写return false;那么在alert显示出来,你点掉以后,表单紧接着就会提交,即页面回发,从而执行服务器端事件onclick。由于页面回发了,也就相当于页面重新加载了一次,所以要是设置div display属性的话是闪一下就没了。
如果加上return false,表单就不提交,所以你js的效果可以出来,但服务器事件就不执行。
非web服务器控件没有状态管理,所以js设置的东西页面回发是不可以保留的。
看你想实现什么功能,我有办法帮你解决。
追问
就是在一个div里放置了几个TextBox,最开始让div隐藏 ,页面上有一个datalist,当点击对应的修改按钮时,显示div,并给TextBox赋值(为对应行上的数据)
追答
这用DataList的ItemTemplate和EditItemTemplate不就解决了吗?第一个模板里放Label绑定,第二个模板里放TextBox绑定。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
noitlr
2012-08-10 · TA获得超过4140个赞
知道小有建树答主
回答量:1772
采纳率:0%
帮助的人:1455万
展开全部
把这两句调换顺序看看呢?如下

document.getElementById("test").innerHTML="showtest";

alert("test");
追问
试了 alert("test")能够出来 另外,如果是用html控件的话就可以显示,其实用asp.net控件也显示了 只是显示完之后又自动消失了 搞不懂。。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友6b5db70
2012-08-10 · TA获得超过322个赞
知道答主
回答量:113
采纳率:0%
帮助的人:100万
展开全部
你试试另外的事件绑定的方法看,在js里面写事件源
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式