将参数从我的视图(页面)传递到我的js文件
Passing parameters from my view (page) to my js file
我问了自己很长时间的一个问题:下面是将参数从视图传递到javascript:的两种方法
方法1:
我的观点:
<script type="text/javascript">
tabChangeConfirmationTitle = "@Html.Raw(UserResource.Warning)";
tabChangeConfirmationMessage = "@Html.Raw(UserResource.TabChangeConfirmationMsg)";
</script>
我的javascript文件:
var tabChangeConfirmationTitle;
var tabChangeConfirmationMessage;
方法2:
我的观点:
<script type="text/javascript">
fctTranslationsForConfirmationDialog("@Html.Raw(UserResource.Warning)", "@Html.Raw(UserResource.TabChangeConfirmationMsg)");
</script>
我的javascript文件:
var tabChangeConfirmationTitle;
var tabChangeConfirmationMessage;
function fctTranslationsForConfirmationDialog(Title, Message) {
tabChangeConfirmationTitle = Title;
tabChangeConfirmationMessage = Message;
}
我更喜欢第一种方法。它好吗?有更好的方法吗?
谢谢。
附言:我知道还有其他相关的问题,但我想听听你对这两种方法的看法。
我会选择方法1:的变体
js文件:
var p = {
tabChangeConfirmationTitle: null,
tabChangeConfirmationMessage: null
};
在你的html头中:
<script type="text/javascript">
document.onload = function() {
p.tabChangeConfirmationTitle = "@Html.Raw(UserResource.Warning)";
p.tabChangeConfirmationMessage = "@Html.Raw(UserResource.TabChangeConfirmationMsg)"
};
</script>
这样一来,你的html就不包含那么多javascript了,如果你想添加更多的变量,那么如何添加就非常简单明了了;只需将变量添加到js文件中的p对象中,并在onload处理程序中初始化它。任何其他javascript,然后加载的初始化代码都可以放在js文件中,并且不会被非javascript代码弄得一团糟。
此外,通过使用p对象,您可以创建一个名称空间,并避免使用多个对象污染全局名称空间。
相关文章:
- JQuery添加元素需要在我的js之前再次添加JQuery脚本
- 为什么不是'我的JS滑块正在工作
- 为什么我的JS不添加一个HTML类
- 使我的JS具有响应性
- 如何从我的js中分离错误和成功按钮
- 我的JS数组打印只显示结束值
- 有没有一种方法可以将我的JS函数排队到JSF事件队列中
- 我的JS在将ascii转换为字符串时添加了一个空格
- hasClass没有'我的js代码不起作用
- 可以'不要让我的.js在我的Dreamweaver文件中工作
- 为什么我的JS"如果“;语句的求值结果总是为false
- 应用<strong>标记到我的js.coffee文件中的字符串
- 如何将新的动态内容添加到我的JS代码中
- 为什么我的JS代码动作如此断断续续
- 为什么我的JS函数无法正常工作
- 提交时不触发我的 JS
- 使用 unity,我的 js 文件无法解决问题
- 即首先破坏我的 JS 脚本,然后我按 F12,它工作得很好
- 我的 JS 代码中的会话启动事件
- 我的js分页代码不起作用,完全不知道是什么原因造成的