js代码:
var json = {};
$("[name]").each(function() {
json[$(this).attr("name")] = $(this).val()
});
var a = 'for (var i in json) {\n'+
' $("[name=\'" + i + "\']").val(json[i]);\n'+
' $("[name=\'" + i + "\']").attr("val", json[i]);\n'+
' $("[name=\'" + i + "\']").trigger("change")\n'+
'}';
console.info("var json = "+JSON.stringify(json,null,2) + "\n" +a);
原理:找到页面上所有form表单的带name属性的元素,生成json,在新的页面生成打印出来的js代码,这里需要注意页面上以id为后缀的name属性应该要过滤掉,比如集成环境上的表单配置要录入到生产环境,两个环境里的id肯定是不一样的,后台根据有无id判断增加还是更新,所以如果id也带过来的话,因为录入的场景都是新增的,所以就录入不了了
$("[name='rightValue']").each(function(i,e){$(this).attr("name","rightValue"+(i+1))})
网友评论