日期:2014-05-16  浏览次数:20375 次

JS调C#问题
最近在纠结一个问题,JS能不能调用C#?我只知道我在ASP.net见过,或者用C#内部的浏览器。如果只有一个简单的HTML文件和一个JS文件,不用内部的浏览器,也不用ASP.NET,能不能调用C#呢??

------解决方案--------------------
ajax可以
------解决方案--------------------
调查一下web程序运行原理和运行过程,
何谓js调用C#?  js由浏览器执行,C#在服务端由服务器执行,两者运行在不同的电脑中,可能相隔10万八千里.  要用js访问服务端,只能通过通讯,可以提交表单或者ajax请求,服务端收到请求后可以根据参数决定执行某个函数,将结果再返回给浏览器.
至于asp.net中的写法 <%=xxx%>方式,似乎调用了服务端函数,但只是编译器提供的错觉罢了,那只是在初始时让服务器执行这段代码,将结果嵌入到页面代码中替换掉<%=xxx%>而已,所以想传递动态参数就会出错,因为那时候在服务端,js根本还未运行,当然无法使用js变量
------解决方案--------------------
又一个没分清楚clien和server运行原理的童鞋。