首页 > 编程语言 > 详细

Asp.net中前台javascript与后台C#交互

时间:2014-08-18 14:21:42      阅读:358      评论:0      收藏:0      [点我收藏+]

方法一:使用Ajax开发框架,后台方法定义前添加[AjaxPro.AjaxMethod],然后就可以在前台js脚本中调用后台C#函数。

方法二:后台方法声明为public或者protected,然后前台使用js脚本进行调用。

以下是代码片段:

.cs 
public string Str() 
{ 
return "javaScript函数中执行后台C#方法.."; 
} 

.aspx 
<script type="text/javascript"> 
var a = "<%=Str()%>"; 
alert(a); 
</script>

方法三:使用Session变量

以下是代码片段:

.cs 
//判断是否存在指定Key值的Session变量 
if (Session["siteName"] == null)

//如果不存在则创建Session变量,给Session["siteName"]变量赋值
Session["siteName"] = "";
 

.aspx 
var siteName="<%=Session["siteName"] %>";

方法四:

以下是代码片段:
  
<asp:Button ID="Button1" runat="server" onclick="Button1_Click" style="display:none;"/> 
<input type="button" id="btnSave " value="保存" onclick="GetBehind ();return false;" /> 
.aspx.cs 
<script type="text/javascript"> 
//调用后台方法 
//使用这种方式调用后台代码,可以在调用之前在前台做一些验证 
function GetBehind() { 
document.getElementById("Button1").click(); 
} 
</script> 

.cs 
protected void Button1_Click(object sender, EventArgs e) 
{}

 

如何在后台C#代码中执行javaScript函数

  方法一:void Page.RegisterStartupScript(string key,string script);

  方法二:使用隐藏域或者Literal控件,在前台使用js脚本把一些js函数控制的值写进隐藏域或者Literal控件,然后前台使用Hidden.Value或者Literal.Text读取前台值。

以下是代码片段:
    .aspx 
  function GetTitleID(obj) 
  { 
  sTitleID=obj 
  if(sTitleID!=null) 
  document.getElementById("HiddenField1").value=type+,+sTitleID; 
  else 
  document.getElementById("HiddenField1").value=type+,0; 
  } 

  .cs 
  string hiddenValue = this.HiddenField1.Value;

 

Asp.net中前台javascript与后台C#交互,布布扣,bubuko.com

Asp.net中前台javascript与后台C#交互

原文:http://www.cnblogs.com/lizeyan/p/3919335.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!