在jQuery中是否有一个简单的非AJAX POST方法?
我正在寻找一个等价于一个表单的页面上的东西,除了隐藏字段设置通过JavaScript,然后获取POST-ED,导致浏览器通过操作加载页面集。只是一个正常的POST,但通过jQuery设置的值。
我想我可以继续实现我当前的方法,但我很好奇,如果jQuery提供了一个快速的方法。在后台,我想象它将动态创建这个窗体所有的隐藏值,并提交它。
解决方法
Tidied Darin的优秀解决方案略。
@H_404_10@function myFunction(action,method,input) {
'use strict';
var form;
form = $('<form />',{
action: action,method: method,style: 'display: none;'
});
if (typeof input !== 'undefined' && input !== null) {
$.each(input,function (name,value) {
$('<input />',{
type: 'hidden',name: name,value: value
}).appendTo(form);
});
}
form.appendTo('body').submit();
}
这是JSLint兼容,并确保没有形式显示在body标签的尽头尽管可能的css定义。用法也略为直接,例如:
@H_404_10@myFunction('/path/to/my/site/','post',{ id: 1,quote: 'Quidquid Latine dictum sit altum videtur' });