jquery 动态创建表单并提交例子

有时候在写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 = $('<form />', {action : params.url, method:"post", style:"display:none;"}).appendTo('body');    
    $.each(params, function(k, v) {
          if ( k != "url" ){
              form.append('<input type="hidden" name="' + k +'" value="' + v +'" />');
          }
    });
    form.append('<input type="hidden" name="csrfToken" value="' + $("#csrf_token").val() + '" />' );
    form.submit();
}

 

例子2

 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>createElement</title> 
<style type="text/css"> 
.warpper{ border:1px solid red; padding:8px;} 
</style> 
<script type="text/javascript" language="javascript" src="JavaScript/jquery-1.6.1.min.js" ></script> 
<script type="text/javascript" language="javascript"> 
<!-- 
///动态创建一个div 
$(function(){ 
$('<div />',{ 
id:'test', 
text:"this is a div", 
"class":"warpper", 
click:function(){ 
var text=$(this).text(); 
alert(text); 
} 
}).appendTo("body"); 
}); 
//创建input:text 
$(function(){ 
$('<input />',{ 
type:"text", 
val:"input text somethings...", 
name:"userName" 
}).appendTo("body"); 
}); 
//创建input select 
$(function(){ 
var slt=$('<select />',{name:"country" }); 
$('<option />',{ 
val:"0", 
text:"请选择" 
}).appendTo(slt); 
$('<option>',{ 
val:"CN", 
text:"China", 
selected:"selected" 
}).appendTo(slt); 
$("body").append(slt); 
}); 
//创建radio 
$(function(){ 
$('<input />',{ 
type:"radio", 
name:"rdo", 
checked:"checked", 
val:"男" 
}).appendTo("body"); 
$('<label>',{ 
text:"男", 
}).appendTo("body"); 
$('<input />',{ 
type:"radio", 
name:"rdo", 
val:"女" 
}).appendTo("body"); 
$('<label>',{ 
text:"女" 
}).appendTo("body"); 
}); 
//creat checkbox 
$(function(){ 
$('<input />',{ 
type:"checkbox", 
name:"cbox", 
val:"1", 
checked:"checked" 
}).appendTo("body"); 
}); 
$(function(){ 
$('<input />',{ 
type:"file", 
name:"myfile" 
}).appendTo("body"); 
}); 
//--> 
</script> 
</head> 
<body> 
<form> 
</body> 
</html>

你需要把创建好的form添加到DOM中,经过浏览器渲染后才能响应事件和方法。tmpForm.appendTo(document.body).submit();

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索测试
, 浏览器
, 参数
params
jquery动态提交表单、form表单提交例子、velocity提交表单例子、ajax提交form表单例子、jquery提交form表单,以便于您获取更多的相关知识。

时间: 2024-08-22 12:34:18

jquery 动态创建表单并提交例子的相关文章

Jquery插件easyUi表单验证提交

 本篇文章主要是对Jquery插件easyUi表单验证提交的示例代码进行了介绍,需要的朋友可以过来参考下,希望对大家有所帮助  代码如下: <form id="myForm" method="post">   <table align="center" style="width:400px;height:auto;margin-top: 20px">            <tr>    

jQuery UI Dialog 表单无法提交的解决方法

jquery ui的dialog这样设计是一项功能还是一个bug.为了在dialog内实现正常的页面提交,根据上述分析,我找到一个简单的解决办法--在jquery ui控件的"open"事件处理程序中将dialog控件动态生成的html元素移到form元素内 $("#dlg").dialog({ open: function () { $("body > div[role=dialog]").appendto("form#asp教

Jquery插件easyUi表单验证提交(示例代码)_jquery

复制代码 代码如下: <form id="myForm" method="post">  <table align="center" style="width:400px;height:auto;margin-top: 20px">           <tr>                                           <td align="righ

ajax-Jquery Ajax Form表单重复提交

问题描述 Jquery Ajax Form表单重复提交 后台服务器根据前台传递的参数,生成了若干个文件,之后前台需要下载这些文件每次表单参数为需要下载的文件名称,需要在button的click事件中将所有产生的这些文件下载下来,所以需要循环提交表单,不知道这个应该怎么解决$.ajax({-- success:function(result){ table.rows('.selected').indexes().each(function(idx){//这里需要多次提交 var d = table

JavaScript动态创建form表单并提交的实现方法_javascript技巧

本文实例讲述了JavaScript动态创建form表单并提交的实现方法.分享给大家供大家参考,具体如下: 页面布局有些复杂的情况下,可能需要在页面中动态创建一个 form,JavaScript 创建 form 演示如下: // JavaScript 构建一个 form function MakeForm() { // 创建一个 form var form1 = document.createElement("form"); form1.id = "form1"; f

jQuery提交多个表单的小例子

这篇文章介绍了jQuery提交多个表单的小例子,有需要的朋友可以参考一下   复制代码 代码如下: <script type="text/javascript"> $(function(){ $("#btnSubmit").click(function(){ $("form[name='form1']").submit(); $("form[name='form2']").submit(); }) }) </

jquery 构造函数在表单提交过程中修改数据

  这篇文章主要介绍了jquery 构造函数在表单提交过程中修改数据的方法,十分简单实用,有需要的小伙伴可以参考下. 先贴代码 ? 1 2 3 4 5 6 7 <script type="text/javascript"> function appendText(){ var content = $("#textarea").val(); var new_content = content + "wap"; $("#text

jquery序列化form表单使用ajax提交后处理返回的json数据

 这篇文章主要介绍了jquery序列化form表单,使用ajax提交后处理返回的json数据的示例,需要的朋友可以参考下 1.返回json字符串:    代码如下: /** 将一个字符串输出到浏览器 */     protected void writeJson(String json) {         PrintWriter pw = null;         try {             servletResponse.setContentType("text/plain;cha

jQuery实现form表单基于ajax无刷新提交方法详解_jquery

本文实例讲述了jQuery实现form表单基于ajax无刷新提交方法.分享给大家供大家参考,具体如下: 首先,新建Login.html页面: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.o