这是上一篇将form转换成json的反向,即将json往form中自动填充,有了这两个封装好了的jquery插件,就可以方便的实现mvc各层之间的数据传递了,再也不写恶心人的那些代码了。目前支持的表单控件元素有限,现这样用倒再说,以后再加!
网页:
<div style="width:400px;background-color:#CCCCCC;padding:10px">
<form id="myform">
<p>
姓名:<input type="text" value="wangsir" id="uname" name="uname"/>
</p>
<p>
怩称:<input type="text" value="风一样的男子" id="nikename" name="nikename"/>
</p>
<p>
密码:<input type="password" value="123456" id="pwd" name="pwd"/>
</p>
<p>
性别:<select name="sex" id="sex">
<option selected value=1>男</option>
<option value=0>女</option>
</select>
</p>
<p>
婚姻状态:<input type="radio" name="married" value="yes"/>已婚<input type="radio" name="married" value="no">未婚
</p>
<p>
个人爱好:
<input type="checkbox" name="fav" value="足球">足球
<input type="checkbox" name="fav" value="台球" >台球
<input type="checkbox" name="fav" value="羽毛球">羽毛球
</p>
<p>
择偶标准:
<input type="checkbox" name="standard" value="高">高
<input type="checkbox" name="standard" value="帅">帅
<input type="checkbox" name="standard" value="富">富
</p>
<p>
目标城市:<select name="city" id="city"><option selected value="wh">武汉</option><option value="other">外省</option></select>
</p>
<p>
头像:<input type="text" readonly value="./images/head.jpg" id="headpic" name="headpic"><img src="./images/head.jpg" width=64px height=64px id="headpic" />
</p>
<p>
受教育经历:
<textarea rows="6" cols="50" id="eduhistory" name="eduhistory" value="" width="200px" height="180px"></textarea>
</p>
<p>
<input type="button" value="提交" onclick="javascript:alert($('#myform').formtojson());"/>
<input type="button" value="填充" onclick="a()"/>
<input type=reset value="取消" />
</p>
</form>
</div>
脚本:
<script language="javascript">
String.prototype.lTrim = function()
{
return this.replace(/^'/,"");
};//去掉左面空格;
String.prototype.rTrim = function()
{
return this.replace(/'*$/,"");
};//去掉右面空格;
String.prototype.Trim = function()
{
return this.lTrim().rTrim();
};//记得各句后都有分号
function a(){
var jsonstring="uname:'Alicezhang',nikename:'美女',sex:'0',married:'no',"+
"fav:'足球|羽毛球',standard:'帅|富',city:'other',"+
"headpic:'./images/head2.jpg',pwd:'1234567890',eduhistory:'i am a student!'"
alert("要填充的json及填充前的界面:"+jsonstring);
$('#myform').jsontoform(jsonstring);
}
$.fn.jsontoform=function(jsonstring){
var formid="#"+$(this).attr("id") ;//input,textarea,select;
var objs=jsonstring.split(',');
for(i=0;i<objs.length;i++){
var kvs=objs[i].split(':');
//alert(kvs.length);
var k=kvs[0];
var v=kvs[1].Trim();
//alert(k+" "+v);
selector="[name='"+k+"']";
//alert(selector);
//alert($(selector).length);
if($(selector).length>0){
for(j=0;j<$(selector).length;j++){
//text or password
if($(selector).attr("type")=="text"||$(selector).attr("type")=="password"){
$(selector).val(v);
}
//combo select
if($(selector).attr("type")==null&&$(selector).length==1){
if($("select"+selector).length==1){
for(n=0;n<$(selector+" option").length;n++){
//alert(n+":"+$(selector+" option:eq("+n+")").val()+"["+$(selector+" option:eq("+n+")").html()+"]==?=="+v);
if($(selector+" option:eq("+n+")").val()==v){
$(selector+" option:eq("+n+")").attr("selected",true);
break;
}
};
}
}
// checkbox
if($(selector).attr("type")=="checkbox"){
var checkboxselector="input[type='checkbox'][name='"+k+"']";
var options=v.split('|');
for(m=0;m<options.length;m++){
for(k=0;k<$(checkboxselector).length;k++)
{
if($(checkboxselector+":eq("+k+")").val()==options[m]){
$(checkboxselector+":eq("+k+")").attr("checked",true);
}
}
}
}
//readio
if($(selector).attr("type")=="radio"){
var radioselector="input[type='radio'][name='"+k+"']";
for(k=0;k<$(radioselector).length;k++){
if($(radioselector+":eq("+k+")").val()==v){
$(radioselector+":eq("+k+")").attr("checked",true);
}
}
}
//textarea
if($("textarea[name='"+k+"']").length==1){
$("textarea[name='"+k+"']").val(v);
}
}
}
}
}
测试效果:
填充前的页面:
填充之后的效果:
以上代码,有兴趣的朋友,欢迎拿去测试,如果有不对的地方,还请不另相告。
- 大小: 76.5 KB
- 大小: 57.7 KB
分享到:
相关推荐
本篇文章将详细讲解如何利用jQuery来解析JSON字符串,并将其动态地添加到HTML列表中。 首先,JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。它基于...
js与jQuery实现获取table中的数据并拼成json字符串操作示例 本文主要介绍了使用JavaScript和jQuery实现从HTML表格中获取数据并将其拼成JSON字符串的操作示例。该示例涉及到JavaScript和jQuery对HTML页面表格数据的...
JsonView是一款常用的离线JSON格式化工具,它允许用户直接拖放或复制粘贴JSON字符串到软件中,然后自动将其美化成树状视图。这种视图方式使得嵌套的JSON对象和数组层次清晰,便于快速定位和查看数据。JsonView通常有...
整理文档,搜刮出一个jquery拼接ajax 的json和字符串拼接的代码,稍微整理精简一下做下分享。 jQuery拼接字符串ajax <form id="myForm" action="#"> <input name="name"/> <input name="age"/>...
在本文中,我们将深入探讨jQuery的`$.getJSON()`方法,它用于从服务器获取JSON格式的数据,并且无需进行页面刷新。这个方法在实现动态、无刷新的Web应用程序时非常有用,例如在构建级联下拉框这样的功能。 `$.get...
在前端开发中,有时我们需要将JSON格式的数据转换成表单(form)的格式进行提交,以便于服务器端处理。在JavaScript的世界里,jQuery库提供了一种便捷的方式来进行这样的转换。本篇文章将深入探讨如何利用jQuery从...
根据JSON数据的key截取JSON字符串根据JSON数据的key截取JSON字符串根据JSON数据的key截取JSON字符串根据JSON数据的key截取JSON字符串根据JSON数据的key截取JSON字符串根据JSON数据的key截取JSON字符串根据JSON数据的...
主要给大家介绍了关于利用jquery如何从json中读取数据追加到html中的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编一起来看看吧。
1. **JavaScript对象到JSON字符串的转换**:在JavaScript中,可以使用`JSON.stringify()`方法将一个JavaScript对象转换为JSON字符串。在jQuery的json插件中,可能存在一个类似的方法,如`$.toJSON()`,这在早期的...
本文将详细介绍如何使用jQuery解析Json字符串,包括解析Json格式和Json对象的方法。 首先,Json格式和Json对象在本质上是相似的,都是用来表示结构化的数据。Json格式通常指的是JSON字符串,它是一种轻量级的数据...
Jquery-json 是 jQuery 的一个插件,可轻松实现对象和 JSON 字符串之间的转换。可序列化 JavaScript 对象、数值、字符串和数组到 JSON 字符串,同时可转换 JSON 字符串到 JavaScript。 var thing = {plugin: '...
自动将字符串转化为Json对象 使用方法Json parse 在前端使用更方便
在早期版本的jQuery中,`jQuery.parseJSON()`函数用于将JSON字符串解析为JavaScript对象。然而,随着JSON支持成为JavaScript语言标准的一部分,现代浏览器都内置了`JSON.parse()`方法,这通常被认为更安全且推荐使用...
与`$.parseJSON` 相反,`$.toJSON` 将JavaScript对象转换为JSON字符串,但同样在jQuery 3.0之后被移除。如果你仍然使用较旧版本的jQuery,可以使用它。 ```javascript var jsonObject = {name: "John", age: 30, ...
jQuery xml-to-json插件是一种用于将XML数据转换为JavaScript Object Notation (JSON)格式的工具。在Web开发中,XML和JSON都是常见的数据交换格式,但它们有着不同的应用场景和优势。XML(Extensible Markup ...
在这个场景中,我们将探讨如何使用jQuery结合MD5和SHA1算法进行字符串加密。 MD5(Message-Digest Algorithm 5)和SHA1(Secure Hash Algorithm 1)都是常见的哈希函数,它们可以将任意长度的数据转化为固定长度的...
本项目“jQuery自动填充表单功能代码.zip”旨在介绍如何利用jQuery UI的Autocomplete组件来实现表单字段的自动填充功能。这个功能常见于搜索引擎、登录表单和任何需要快速输入建议的场景中,能提升用户体验并减少...
使用jQuery.parseJSON将这个JSON字符串转换为JavaScript对象: ```javascript var user = jQuery.parseJSON(jsonString); ``` 转换后,就可以通过JavaScript对象的属性名来访问用户的名字、年龄、城市等信息: ```...
3. **自动JSON解析**:jQuery会自动将服务器响应的JSON字符串转换为JavaScript对象,避免了手动解析的繁琐步骤。 4. **良好的错误处理**:jQuery提供了一套完整的错误处理机制,可以优雅地处理网络或服务器问题。 ...
本文实例讲述了Jquery解析json字符串及json数组的方法。分享给大家供大家参考。具体如下: <!doctype html> <html> <head> <meta charset="utf-8"> [removed][removed] </head> <...