现代网络技术有越来越多的方法来实现任务。在我们使用Forms来POST数据并在服务器端代码上使用它之前。但是今天,当使用javascript和web服务将浏览器用作客户端(没有服务器端代码)时,我在使用表单方面有点迷失。见这个例子:
我想知道是否应该使用Form来获取应用程序页面的参数。 基本上,我目前有:
<div class="form-inline" role="form">
<div class="form-group">
<label>Parameter1</label>
<input class="form-control" id="Parameter1Id" type="text" />
</div>
<div class="form-group">
<button id="RefreshButton" type="button" onclick="RefreshData();" class="btn" >Refresh Values</button>
</div>
</div>
function RefreshData() {
// this get data method uses AJAX, from jQUery
GetData($('#Parameter1Id').val(), dataCallBack, errorCallBack);
}
function dataCallBack(data) {
UpdateUIData(data);
}
但我认为在这种情况下,对于这种用法,Form不是必需的,因为我可以只使用对象而不将它们放在表单中。
但是,我注意到,当不使用表单时,有时页面会在表单对象发生变化时自行重新加载。
在主要使用客户端代码时,能帮助我了解构建UI的最佳方法吗?
提前致谢。
答案 0 :(得分:1)
如果您想接受用户输入,那么总是使用表单。
考虑progressive enhancement使用JavaScript来改进用户界面,但是首先要获得可靠的工作而不依赖于JS。
答案 1 :(得分:1)
叫我老学校,但我不太喜欢“客户端处理”表格的整个想法。
使用普通表单,除非您绝对需要使用javascript(99.9%的情况下,您可以使用没有任何javascript的表单)。
另外,请记住,输入上的所有验证都应该在服务器端完成:方式太多次我看到程序员只验证客户端的用户输入,从而使软件容易受到任何类型的攻击。
如果您还想通过javascript检查用户的输入,请在元素上触发“模糊”事件时执行此操作;但仅使用此选项通知用户。重新检查服务器上的所有内容。
最后,如果您想提交表单而又想避免重新加载整个页面,可以使用AJAX,这样您就可以让浏览器在后台执行请求。此外,由于您使用的是jQuery,因此您可能想知道jQuery makes AJAX even easier to use。
答案 2 :(得分:0)
就你的“提神”问题而言:看看AJAX和Jquery。 Ajax是针对这个问题制作的!