日期:2014-05-17  浏览次数:20437 次

JS调用后台函数(C#)
根据网上的方法都没办法实现

C#
 public void TEST()
 {
  ClientScript.RegisterStartupScript(GetType(), "", "<script type='text/javascript' >alert('test success');</script>");
 }

html

<script type='text/javascript' >
  function mytest(){
  //document.getElementById("t1").click();
  <%=TEST()%>
   
  //以上二种办法都试过,没有反应,下面的还提示错误  

  }

  <a href="#" onclick="mytest()" >test function</a>



我的平台是 vs2010
</script>



------解决方案--------------------
后台:
protcted string FormatStr()
{
return "测试";
}

前台:
<%= FormatStr() %>
运行试试
------解决方案--------------------
你这样肯定没有反应了,JS可以执行后台的函数,但必须通过AJAX,否则,在服务器同步返回数据的情况下,你这条语句是没有效果的

另外说一句,在JS中,<%=xxx %>这样的语句不是用来执行后台函数的,而是用来获取后台的全局变量的值的
比如:
<script type='text/javascript'>
var s = '<%=session("uid"> %>;
alert(s);
</script>
------解决方案--------------------
调用和输出 不是一个概念

<% %> 这种方式是输出,只能在页面加载的时候 使用

你想在js中 动态调用 后台方法的话,需要同步或者异步发起 请求才行
------解决方案--------------------
探讨

调用和输出 不是一个概念

<% %> 这种方式是输出,只能在页面加载的时候 使用

你想在js中 动态调用 后台方法的话,需要同步或者异步发起 请求才行

------解决方案--------------------
用ajax吧
------解决方案--------------------
楼主,问题解决了没,
------解决方案--------------------
后台:
protected string FormatStr()
{
return "测试";
}

前台:
<script type="text/javascript">
function mytest() {
var a = "<%=FormatStr()%>"
alert(a);
}
</script>

------解决方案--------------------
探讨

引用:

调用和输出 不是一个概念

<% %> 这种方式是输出,只能在页面加载的时候 使用

你想在js中 动态调用 后台方法的话,需要同步或者异步发起 请求才行

+1

------解决方案--------------------
调用后台方法的话,微软有封装好的控件.利用ajax异步调用.

HTML code

<asp:ScriptManager ID="ScriptManager1" runat="server" EnablePageMethods="true">
</asp:ScriptManager>

<input  type="button" onclick="PageMethods.JavaScriptTest('js',function(result){alert(result);})" value="调用后台方法"/>

------解决方案--------------------
此连接是JS调用后台方法实现的省市级联(相当于AJAX调用后台方法)
http://bbs.0710soft.com/showtopic-962.html
------解决方案--------------------
http://www.15ae.com/archive/2011-12/06095738255.html你看看这个,其实就是运用ajax
------解决方案--------------------
lz教你一个简单的方法 放一个linkbutton
你所谓的函数操作写在 linkbtn 点击事件里面
然后 js里面__doPostBack(事件名)就可以了
------解决方案--------------------
用一般处理程序 和 js+ajax 处理很方面的 楼主可以去找找
------解决方案--------------------
用jquery + ajax 来实现
下面是个例子,在js中写的:

o.data = <%=ViewData["treedata"] %>;