获取form表单的值并转化为字符串、JSONArray或JSONObject的方法及form取不到值的解决办法
2016-09-01 22:38
1071 查看
<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">form表单提交时,可能需要转化为不同的形式来作为参数请求接口。本文总结了将form表单的值并转化为字符串、JSONArray或JSONObject的方法。</span>
1. form转化为字符串
<pre name="code" class="html"><pre name="code" class="html">var a=$('form').serialize();
alert(a);
该方法将form值转化为 key=value&key=value 的形式。
2. form转化为JSONArray
var a=$('form').serializeArray();
var str=JSON.stringify(a);
alert(str);
3. form转化为JSONObject
附:form表单取不到input textarea值的解决办法
以上方法均可获取到input textarea的值,如果alert为空字符串,请检查input textarea的name属性是否已赋值,如没有name属性,则form取不到该文本框的值。
1. form转化为字符串
<pre name="code" class="html"><pre name="code" class="html">var a=$('form').serialize();
alert(a);
该方法将form值转化为 key=value&key=value 的形式。
2. form转化为JSONArray
var a=$('form').serializeArray();
var str=JSON.stringify(a);
alert(str);
3. form转化为JSONObject
<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);"></span><pre name="code" class="html"><span style="white-space:pre"> </span>function submit(){ var a=$('form').serializeObject() ; var str=JSON.stringify(a); console.info(str); } $.fn.serializeObject = function() { var o = {}; var a = this.serializeArray(); $.each(a, function() { if (o[this.name]) { if (!o[this.name].push) { o[this.name] = [ o[this.name] ]; } o[this.name].push(this.value || ''); } else { o[this.name] = this.value || ''; } }); return o; }
附:form表单取不到input textarea值的解决办法
以上方法均可获取到input textarea的值,如果alert为空字符串,请检查input textarea的name属性是否已赋值,如没有name属性,则form取不到该文本框的值。
相关文章推荐
- 在phpstorm中利用post方法提交form表单后,在响应页面获取不到数据的解决办法
- .ocx注册失败以及IE使用<object>获取不到.ocx方法的解决办法
- 关于form表单提交文件file后台controller中参数获取不到的解决办法
- 使用net.sf.json包提供的JSONObject.toBean方法时,日期转化错误解决办法
- 在struts2 中 JSONArray.fromObject转化字符串的一个特殊用法,直接返回值
- Android Fragment中onActivityResult()方法获取不到返回数据或者无响应的解决办法
- 获取不到app.config里面的数据库连接字符串的解决方法
- Android进步之十四:使用jackon的ObjectMapper的writeValueAsString方法可以把java对象转化成json字符串
- 解决当FORM的ENCTYPE="multipart/form-data" 时request.getParameter()获取不到值的方法
- PHP JSON出错:Cannot use object of type stdClass as array解决方法
- TinyMCE提交AjaxForm获取不到数据的解决方法
- jquery、js ajax添加的表单的控件在火狐(Firefox)下获取不到值的解决方法
- js添加的表单在火狐下获取不到数据的解决方法
- springMvc 完美解决 multipart/form-data 方式提交请求 在 Filter 中 ServletRequest.getParameter方法 获取不到参数的问题
- 简单解决 multipart/form-data 文件上传表单中 传递参数无法获取的办法! (解决办法:动态更改表单提交URL)
- js添加的表单在火狐下获取不到数据的解决方法
- TinyMCE提交AjaxForm获取不到数据的解决方法
- 将form表单里的数据封装成对象 json2.js的例子 jquery的serialize方法转换空格为+号的解决方法
- JSONObject 解析从网络获取的json数据时,java.lang.String cannot be converted to JSONObject解决办法(编码 UTF-8)
- Android Fragment中onActivityResult()方法获取不到返回数据或者无响应的解决办法