当前位置:编程学习 > JS >>

JS调用C#后台变量和方法出现的问题

我前台代码是这样的 <script language="javascript" type="text/javascript"> function sel() { document.getElementById("<%=Button1.ClientID %>").click(); } function show() { alert(document.getElementById("Hidden1").value); } </script> </head> <body> <form id="form1" runat="server"> <div> <a href="javascript:void(0)" onclick="sel();show();">asdfdsf</a> <asp:Button ID="Button1" runat="server" style="dispaly:none" Text="Button" onclick="Button1_Click1" /> <input id="Hidden1" type="hidden" runat="server" /> </div> </form> </body> </html> 后台代码是这样的: protected void Button1_Click1(object sender, EventArgs e) { Hidden1.Value = "123333"; } 就是我想点找链接的时候显示出Hidden1的值,但是现在有个问题,我这样做的时候是要点两次才显示正确的值,我要的是只点一次就显示正确的值,高手帮帮忙!但必须是用JS调用后台的方法!
追问:这样做是没错了,但是我JS里还有一个方法,原本是这样的:我点找链接,调用后台方法,然JS再根据后台获得的变量来判断这个变量的值,这个变量就一定就是0和1,如果是0,我把一张能修改的表显示出来,如果是1我把一张不可以修改的表显示出来!所以我的方法应该没错吧!那我该如何获取在show方法里获取后台的变量呢,先调用方法,再获取变量
答案:<a href="javascript:void(0)" onclick="sel();show();">asdfdsf</a>
这里错了, 调了sel()后页面就刷新了,show()的效果就出不来了。

应该这样:
1、
<a href="javascript:void(0)" onclick="sel();show();">asdfdsf</a>
改成<a href="javascript:void(0)" onclick="sel();">asdfdsf</a>:
2、
 protected void Button1_Click1(object sender, EventArgs e)
    {
        Hidden1.Value = "123333";
    }
改成
 protected void Button1_Click1(object sender, EventArgs e)
    {
        Hidden1.Value = "123333";
       ScriptManager.RegisterStartupScript(this, this.GetType(), Guid.NewGuid().ToString(), "show();", true); 
    }

试试吧~ 

度娘抽起风来真严重,前两天明明改了回答。。。
其他:学习 将.cs数据转化为Json格式活着字符串格式.

用hidden field保存这个值

在ajax javascript 里面手动解析.
 

上一个:js 里面的单引号和双引号
下一个:求助一个使用js做的直接设在按钮上的密码

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,