【发布时间】:2012-02-19 21:27:39
【问题描述】:
我正在使用从 JSON 文件导入的 javascript 对象以 HTML 格式构建表单。 我使用递归算法来构建 HTML 表格,以及相应的元素(标签、文本框等) 字段加载当前节点的值。
这个想法是编辑文本框中的值;这反过来又更新了 javascript 对象。什么时候 已进行更改,编辑器会将 JSON 对象发送到服务器并更新文件。
令人费解的问题是,如何引用已更改的节点?我已经尝试了几个 方法无济于事。
编辑:
这是我正在做的基本想法:
function build_tree(obj, depth) {
for (key in obj) {
if (typeof(obj[key]) == 'object') {
print(key + "<input type="text" value='" + obj[key] + "'>");
build_tree(obj[key], depth + 1);
} else
print(key + "<input type="text" value='" + obj[key] + "'>");
}
现在,我如何将 obj[key] 的值绑定到文本框,这样当我更改 值它更新 Javascript 对象?
【问题讨论】:
-
请分享代码,说明您拥有什么、什么不工作以及应该做什么。
-
您是否正在寻找在文本框中按下某个键时触发的事件?还是您希望有人单击按钮来更改值?
-
当页面加载时,它声明了一个全局变量“obj”,它构建了一个元素树。我希望当您更改文本框时,它会更改全局对象“obj”。
-
约翰尼看看我的答案,让我知道这是否适合你。
-
这正是 knockoutjs 所做的。
标签: javascript html json