创建一个字符串(文本),声明变量及其值,以便在Javascript中使用
Create a string (text) that declares variable and its value, for use in Javascript
我正在处理需要具有可变动态部分的Javascript代码。
我正在尝试替换这段Javascript代码:
var data = document.getElementById('IDofSomeHiddenField').value;
var print = document.getElementById('IDofOutputField');
print.value = data;
比如:
var encapsulatedData = "var data = document.getElementById('IDofSomeHiddenField').value;";
var encapsulatedPrint = "var print = document.getElementById('IDofOutputField');";
这样,当我使用Javascript代码中的某个地方时:
encapsulatedData;
encapsulatedPrint;
这将起作用:
print.value = data;
但它不起作用。
有没有办法申报:
var encapsulatedData
var encapsulatedPrint
以类似的方式,就像我上面写的,所以:
print.value = data;
工作?
你的意思是神奇地创建全局变量吗?
function encapsulatedData() {
window.data = document.getElementById('IDofSomeHiddenField').value;
}
function encapsulatedPrint() {
window.print = document.getElementById('IDofOutputField');
}
encapsulatedData();
encapsulatedPrint();
print.value = data;
这不是很卫生的规定,你想要的可能不是你应该做的。你能退一步说你的目标是什么,而不是对该目标的意思吗?我怀疑您真正想要使用的是闭包或返回用于延迟评估的一流函数。
例如:
function makePrinter(id) {
var outputfield = document.getElementById(id);
return function(value) {
outputfield.value = value;
}
}
function getValue(id) {
return document.getElementById('IDofSomeHiddenField').value;
}
var data = getValue('IDofOutputField');
var print = makePrinter('IDofOutputField');
print(data);
我认为您有语法错误。你没有把第一行和第二行的括号括起来。
var data = document.getElementById('IDofSomeHiddenField').value;
var print = document.getElementById('IDofOutputField');
print.value = data;
像你试图做的那样使用JS评估也是一种糟糕的形式。如果你真的想为每个页面元素创建一个返回页面元素的函数。ECMAScript 5有一些属性,我认为这正是您想要做的事情,但这不是ECMAScript3 JS的工作方式。
相关文章:
- 将函数的上下文应用于javascript变量
- 如何通过ajax刷新JSF填充的javascript变量
- Javascript变量赋值|
- 限制javascript变量的最小/最大整数
- 来自文本输入null的html javascript变量
- 访问jsrender模板中的全局javascript变量并更新它
- 从数据库中获取数据并插入JavaScript变量
- 如何将javascript变量传递到Meteor Spacebars模板中
- 将JavaScript变量保存到Rails模型
- 在if语句下的html中使用javascript变量
- Javascript变量分配-按类别
- 操作javascript变量[HTML]以只显示文本
- 无法比较javascript变量
- 如何将smarty变量与javascript变量进行比较
- 如何使用PHP将javascript变量添加到mysql数据库中
- Javascript 变量使用 jquery 查找变量
- 重新加载页面时Javascript变量发生变化
- 在asp classic中使用javascript变量
- 全局Javascript变量变为null
- 如何向服务器端提交javascript变量