之前是用jQuery的post()方法实现向服务器POST数据.现在新需求需要呈现服务器返回的HTML页面.这个呈现是类似于普通form提交后跳转的过程.解释:使用表单进行POST的方法点击Submit就可以向"/B"POST数据并跳转到B页面Ajax方法$.post("/B",{"foo":"bar"})这种方法能够POST自定义数据但是不能够跳转到B页面现在的需求:用JavaScript控制POST的数据内容并跳转到B页面,类似ExtJS的standardSubmit功能需求决定我们不能在页面上使用form来提交数据.因为提交的数据是页面上几个Div的全部HTML内容(实际上是富文本编辑器).使用jQuery的.html()方法取得这些HTML内容.现在想到的思路是使用jQuery在内存中建立一个form对象,然后调用这个对象的submit方法form=$("")str=$("#bar").html()input=$("").val(str).attr('name','bar')form.append(input)//....继续添加字段form.submit()上面这种方法虽然能用,但是感觉很丑,有没有更好的方法?
1 回答
人到中年有点甜
TA贡献1895条经验 获得超7个赞
扩展:$.extend({StandardPost:function(url,args){varform=$(""), input;form.attr({"action":url});$.each(args,function(key,value){input=$(""); input.attr({"name":key});input.val(value);form.append(input);});form.submit();}});调用:$.StandardPost('url/path/req',{arg0:'arg0',arg1:'arg1'});
添加回答
举报
0/150
提交
取消