Ajax对表单进行自动填充

近期的项目里出现了需要对Ajax返回的JSON数据填充至表单,但一个一个赋值太复杂了,遂找到了此代码。

$.ajax({
            url: xxxx,
            type: "GET",
            dataType: 'json',
            success: function (result) {
                if ("200" == result.code) {
                  var data = result.data
                  for(var k in data){
          			var type = $("[name="+k+"]").attr("type");
          			$("textarea[name="+k+"]").val(data[k]);
          			if (type!=undefined&&type!=null) {
          				if(type=="text"){
          					if(data[k]!=""&&data[k]!=null){
          						$("[name="+k+"]").val(data[k]);
          					}
          				}else if(type=="radio"){
          					if(data[k]!=""&&data[k]!=null){
          						$("[name="+k+"][value="+data[k]+"]").attr("checked","true");
          					}
          				}else if(type=="checkbox"){
          					var ckeckboxVal = data[k];
          					if(ckeckboxVal!=""&&ckeckboxVal!=undefined&&ckeckboxVal!=null){
          						if(ckeckboxVal.length==1){
          							$("[name="+k+"][value="+ckeckboxVal+"]").attr("checked","true");
          						}else{
          							var str = ckeckboxVal.split(",");
          							for (var i = 0; i < str.length; i++) {
          							    $("[name="+k+"][value="+str[i]+"]").attr("checked","true");
          							}
          						}
          					}
          				}
          				
          				}
          			}
          		}
                }
            }
});

注意:表单的name值要与json里的名称一致

不支持下拉框,数据在Json的data里,不是的自行修改。

赞(2) 打赏
转载请保留出处:耗子博客 » Ajax对表单进行自动填充
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

金额随意,一百两百也不介意的啦

支付宝扫一扫打赏

微信扫一扫打赏

Loading