当前位置:编程学习 > C#/ASP.NET >>

ASP.net中 如何用 C# 调用含有参数的Javascript函数

--------------------编程问答-------------------- C#代码到了客户端都是HTML,你先写好调用函数的js然后写C#代码生成对应的HTML就行了。
js的数组用new array生成 --------------------编程问答-------------------- refer related:
http://www.cnblogs.com/insus/articles/1945582.html
http://www.cnblogs.com/insus/articles/1945539.html
http://www.cnblogs.com/insus/archive/2011/10/12/2208541.html --------------------编程问答-------------------- 版主出没 --------------------编程问答--------------------  Page.ClientScript.RegisterStartupScript(typeof(string), "1", "<script>myfunc('参数1','参数2');</script>");
这两个参数值可固定也可以动态 --------------------编程问答-------------------- 谢谢各位的帮助,版主的提示让我从根本上明白了,ASP的代码处理机制,我平时主要搞的是C#窗体应用开发,对ASP没有多少研究。问题已经解决。采用的是个不是太标准的方法。

1,在后台C#代码中 声明一个 public变量,再在前台 javascript中引用这个变量,让之成为js函数中的变量输入值。再以调用无参函数的形式进行函数调用。

2,因为C#代码经过asp服务器处理后会转换成对应的html代码,于是在C#代码中以字符串的形式生成一个对应的javascript数组,并将其传入js函数。

代码

C#后台:
声明全局变量
        public String str1 = "abc";
        public String str2 = "def";

js前台:
     <script type="text/javascript">
    function myfunc(){
 var arg1=<%=str1%>;
var arg2=<%=str2%>;

....................

 }

 </script>




        

--------------------编程问答-------------------- 尼玛 哥们 你这句话:谢谢各位的帮助,版主的提示让我从根本上明白了,ASP的代码处理机制,我平时主要搞的是C#窗体应用开发,对ASP没有多少研究。问题已经解决。采用的是个不是太标准的方法。“ 
让我突然感觉到又一个共产党员的生成 或者是公务员的生成。要不要这么那什么 你懂的 --------------------编程问答-------------------- 其中在C#中调用这个js函数的方法为

 ClientScript.RegisterStartupScript(ClientScript.GetType(), "myscript", "<script>myfunc();</script>"); --------------------编程问答-------------------- Javascript在客户端页面,后台获取不了。你使用的方法实际上是前台获取后台的变量,也可以调用后台的方法。 --------------------编程问答-------------------- 在说js的Array() 打印出来也是一连串的字符 跟C#的数组没啥区别 --------------------编程问答--------------------
引用 6 楼 peng2739956 的回复:
尼玛 哥们 你这句话:谢谢各位的帮助,版主的提示让我从根本上明白了,ASP的代码处理机制,我平时主要搞的是C#窗体应用开发,对ASP没有多少研究。问题已经解决。采用的是个不是太标准的方法。“ 
让我突然感觉到又一个共产党员的生成 或者是公务员的生成。要不要这么那什么 你懂的


哥们儿我是保密局当差的,呵呵。 --------------------编程问答--------------------
引用 5 楼 Dortmund2010 的回复:
谢谢各位的帮助,版主的提示让我从根本上明白了,ASP的代码处理机制,

是的,asp.net仅仅是一个html字符串(代码)生成器,它一次性产生html,然后发送给浏览器端作为浏览器请求的返回值。因此当asp.net销毁当前的Page对象时,它输出的html甚至还没有到达浏览器端,还在那里“东京、成都、北京”地路由着呢。asp.net根本不可能去调用js代码,它只能输出将来在客户端javascript要执行的字符串(当然既包括函数名也包括函数参数值),加入要输出给客户端的大的html字符串流中。 --------------------编程问答-------------------- 有些人总是对人说“在asp.net程序中调用js”这种话来误导别人,这种人一般都是会对我说“你告诉我1+2=3就行了,不用告诉我为什么,因为反正我也听不懂”的人。

我认为lz不是这种人,lz是一个可以总结,并且分享这种总结的人。
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,