有时候在写web 应用的时候,需要临时动态构造一个form 并提交,form 里面的参数以及action,以及是post请求还是get请求,甚至form 的样式都是可以指定的,用原生的javascript 肯定可以做到,我用jquery做了一个测试。
我自己测试的是构造一个分页的post请求, 为了防止csrf 攻击,加入了csrf 验证,不需要的可以去掉.
例子
function genSearchObj(url,page,pageSize,keyword){
var params = {};
params.url = url;
params.page = page;
params.pageSize = pageSize;
params.cond = keyword;
return params;
}
function mockFormSubmit(params){
var form = $('
', {action : params.url, method:"post", style:"display:none;"}).appendTo('body');
$.each(params, function(k, v) {
if ( k != "url" ){
form.append('');
}
});
form.append('' );
form.submit();
}
例子2
createElement