通过Javascript从后台代码访问全局静态变量
Access global static variable from code behind through Javascript
当从javascript调用的函数后面的代码中获取静态变量时,我遇到了一些问题。
我的aspx页面:
<script type="text/javascript">
function AlertMsg(msg) {
var msg213 = "<%= GetValue(" msg ") %>";
alert(msg + '::' + msg213);
}
</script>
背后的代码:
public string GetValue(string sString)
{
return MyNamespace.MyClass.MyStaticVariable;
}
我在另一个页面的page_load中设置了这个变量。我通过从c# WebBrowser应用程序调用它来访问javascript函数。总是空的
任何想法?
我认为你只需要在你对'msg'的引用后面加上'+'
var msg213 = "<%= GetValue(" + msg + ") %>";
NET不像桌面应用程序,在另一个页面上编写的任何变量在移动到另一个页面时会丢失。您需要将值保存到持久的位置。
- <
- 会话/gh>缓存
- 数据库
- 应用或Web配置文件。
- 变量必须是常量或静态
试试这个
'<%= GetValue("Some Value") %>';
这意味着当页面呈现时,GetValue方法调用和返回字符串将写入文档主体,如response。写
这只会在页面呈现时发生,并且不会发生进一步的调用
我认为部分混乱来自于代码中的格式。如果您只查看服务器标记:<%= GetValue(" msg ") %>
,您将看到正在调用GetValue
方法,并且正在传入字面值字符串msg
。服务器标记本身周围有引号,但这些引号不影响服务器标记内部的内容。不是传递JavaScript函数的msg
参数的值。
服务器方法不能以这种简单的方式从JavaScript中调用,它需要使用类似AJAX的东西来完成。
相关文章:
- 全局变量和全局对象的属性之间有什么区别吗
- 正在全局范围中查找JavaScript函数
- delete关键字在全局变量上的不同行为
- 在javascript函数中设置全局变量
- 如何将getJson的响应保存在全局变量中
- 全局对象是属于哪个类的对象
- Javascript全局onclick监听器
- 从Javascript方法返回全局变量
- 如何处理10页以上的静态页眉/页脚
- Grunt-connect在根目录之外提供静态文件
- 访问jsrender模板中的全局javascript变量并更新它
- 来自文档或下一个静态父级的事件委派
- JavaScript命名约定;静态“;类或模块
- 无法理解JavaScript中的静态方法
- Javascript,从静态函数中打印全局对象
- Javascript:如何声明非全局静态方法
- 高级闭包兼容性和静态类型 - 使用未定义类型和全局函数,如localStorage.getItem();
- 在全局对象中定义的类中的 Javascript 静态方法
- javascript中的全局静态函数
- 通过Javascript从后台代码访问全局静态变量