javascript - 以编程方式从另一个 javascript 函数更改一个函数中的 javascript 值
问题描述
我意识到这是 javascript 101 并且在这些方面有很多关于 SO 的问题,但我对 JS 非常生疏,似乎无法让它工作。
我正在尝试更改一些使用另一个脚本 A 调用小部件的 javascript B 中的参数。重要的是,A 在调用 B 之前设置 B 中的值,以便 B 使用期望值。
Here is the code I have right now:
A.
<script type="text/javascript">
function getName() {
return "Raoul Walsh";
}
</script>
B.
<script type="text/javascript">
new MyView.widget(
{
"name": "getName()",
"locale": "en"
}
);
</script>
小部件没有识别出我想要的值:'Raoul Walsh',而是识别出值'getName()'。换句话说,它没有意识到,我正在尝试调用一个函数。
顺便说一句,我也尝试使用 DOM 设置值失败。
如何在小部件脚本执行之前设置它的值,以便它使用我想要的值执行。
在此先感谢您的任何建议
解决方案
您不需要引号,只需调用 getName()
<script type="text/javascript">
function getName() {
return "Raoul Walsh";
}
</script>
<script type="text/javascript">
new MyView.widget({
"name": getName(),
"locale": "en"
});
</script>
如果 javascript 无法识别该函数,则可能会出现一些在没有完整页面的情况下难以调试的范围问题。
在这种情况下,您可以通过将函数附加到窗口对象来解决问题
<script type="text/javascript">
window.getName = function() {
return "Raoul Walsh";
}
</script>
<script type="text/javascript">
new MyView.widget({
"name": window.getName(),
"locale": "en"
});
</script>
推荐阅读
- c# - C# 块中变量的名称会影响内存吗?
- r - 对数据框中的单个变量使用 as.numeric
- jquery - 无法在 ruby 5 应用程序中向数据表添加选项
- jquery - 使单个 jQuery 函数更简洁
- python - 如何将烧瓶pymongo中光标对象的第一个值分配给变量
- plsql - 在 PL/SQL 中显示表中所有记录的存储过程
- sql - 如何使用表单输入作为查询参数
- spring-data-rest - Spring、hal浏览器与实体关系
- java - Spring Boot @ManyToMany 未在 JSON 中显示
- r - R randomForest 太多类别错误即使少于 53 个类别