javascript如何调用C#后代码中的过程 和ASP.NET调用JS乱码解决方案

来源:互联网 发布:美国豪华军粮淘宝 编辑:程序博客网 时间:2024/06/06 12:03

javascript如何调用C#后代码中的过程 和ASP.NET调用JS乱码解决方案


 
第一种情况:
1.后台方法:
protected string CsharpVoid(string strCC)
{
return strCC;
}
2.javascript 调用
<script language="javascript">
var s = "<%=CsharpVoid("www.esoutong.com")%>";  
document.write(s);
</script>
+++++++++++++++++
第二种情况:
1.后代码:
protected void CsharpVoid()
    {
        string strCC = "http://www.esoutong.com/";
        Response.Write(strCC);
    }
2.调用方法:CsharpVoid()
<script language="javascript">
document.write("<%CsharpVoid();%>");
</script>
你可在页面中放一个按钮,把它设置为不可见style="display:none",然后,用脚本让此按钮点击
document.all("button1").click();
在此按钮的C#后台中写事件代码,这就是最简单的脚本调用C#方法.在网上看到这样一个问题:作者用的平台是.NET,用C#在本机开发,在aspx文件中调用 js文件:
<script language="javascript" src="mymenu.js"></script>
结果在页面及 alert 提示的中文均为乱码,求解决办法。结果后面跟贴给出一长串的解决办法,其实很简单,在aspx 文件的头部添加一行代码即可:
<%@ Page ContentType="text/html" ResponseEncoding="gb2312" %>
 
-----------------------------------------------
上的方法,在编译后在没有任何事件触发时 自动进入后台方法 不好使。
另一种方法如下:首先定义两个隐藏标签
<asp:HiddenField ID="school_id" runat="server" />
      <asp:HiddenField ID="school_name" runat="server" />
js中 :
var hd_operate=document.getElementById("<%=school_id.ClientID %>");
    var hd_sp_id=document.getElementById("<%=school_name.ClientID %>");
    hd_operate.value='update_shopping';
    hd_sp_id.value=id;
    document.aspnetForm.submit();
后台方法中:
页面加载的时候写个方法 包含下面代码;
switch (school_id.Value)
            {
                case "update_shopping":
                    update_shopping(school_name.Value);
                    break;
            }。即可执行 update_shopping方法。

 

原创粉丝点击