forms - 加载 HTML 对象客户端(表单)

标签 forms node.js dom knockout.js

我必须编写一个单页应用程序,它将在整个应用程序中使用相同的 3 个表单,只是每个表单的操作会发生变化。标签/输入将是相同的,等等...

我想让我的应用程序快速且响应迅速,因此,我想知道每次必须加载时通过 Javascript 动态生成 FORM 是否是一个好主意,而不是从服务器将其作为 HTML 下载。

那么,通过 Javascript 生成 DOM 对象有什么好的做法吗?有什么方法可以在第一次加载应用程序时下载每个 FORM 的 HTML 代码吗?或者我每次都必须使用 JS 通过 DOM 对象来构建它们?

这里有什么好的做法吗?我正在使用node.js、knockout.js、jquery。

谢谢!

最佳答案

您正在使用 knockout ,因此只需将表单作为 knockout 模板即可:

<script type="text/html" id="MyForm">
   <!-- labels and inputs and other form elements here -->
</script>

然后您可以稍后在页面中使用它,例如

<form class="foo" data-bind="attr: { action: myAction }, template: 'MyForm'></form>

myAction 将是您传递给 ko.applyBindings 的模型的可观察或普通属性,例如

ko.applyBindings({ action: '/submit/stuff' }, $('form.foo')[0]);

knockout 有great tutorialsgreat documentation所以也检查一下。

关于forms - 加载 HTML 对象客户端(表单),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13500215/

相关文章:

php - 提交表单后停止 JQuery 验证

javascript - BUG 导出的对象在修改时不会在外部发生变化

javascript - NodeJS类方法异步返回

javascript - 在页面加载时隐藏文档正文

javascript - 用于删除字符串中空格的正则表达式

javascript - 使用普通 JavaScript 和无正则表达式拆分图像 src 属性

javascript - 触发选择自然语言形式的值

jquery - 有没有办法使用 jQuery 的序列化表单字段并修剪字段中的值?

javascript - 提交不会提交表格

javascript - 确定一个值是否在两个价格之间跳跃或者是否实际上在演变