解析页面表单元素

 parseForm: function () {
var data = {};
$(this).find('input').each(function () {
switch ($(this).attr('type')) {
case 'radio':
case 'checkbox':
if ($(this).prop('checked')) {
data[$(this).attr('name')] = $(this).val();
}
break;
default:
data[$(this).attr('name')] = $(this).val();
} });
$(this).find('select').each(function () {
data[$(this).attr('name')] = $(this).val();
});
$(this).find('textarea').each(function () {
data[$(this).attr('name')] = $(this).val();
});
return data;
}
}); json数据渲染表单元素
 loadForm: function (jsonstr) {
try {
var jsondata = jsonstr == '' ? '' : $.parseJSON(jsonstr);
} catch (e) {
throw new Error('非法的json字符串~');
}
var self = this;
var form = {
input: function (name, val) {
$(self).find('input[name="' + name + '"]').val(val);
},
checkbox: function (name, val) {
$(self)
.find('input[name="' + name + '"][type="checkbox"][value="' + val + '"]')
.attr('checked', 'checked');
},
radio: function (name, val) {
$(self)
.find('input[name="' + name + '"][type="radio"][value="' + val + '"]')
.attr('checked', 'checked');
},
textarea: function (name, val) {
$(self).find('textarea[name="' + name + '"]').val(val);
},
select: function (name, val, data) {
var obj = $(self).find('select[name="' + name + '"]');
if ($.isEmptyObject(obj)) {
return false;
}
if (typeof data == 'string') {
obj.append(decodeURIComponent(data.replace(/\+/g, '%20')));
} var selected = obj.find('option[value="' + val + '"]');
if ($.isEmptyObject(selected)) {
obj.find('option:eq(0)').attr('selected', 'selected');
} else {
selected.attr('selected', 'selected');
}
}
};
if (typeof jsondata == 'object') {
for (var key in jsondata) {
var d = jsondata[key];
if (typeof d != 'object' || d.length <= 0) {
continue;
}
if (typeof d.name == 'undefined') {
continue;
}
switch (d.type) {
case 'select':
form.select(d.name, d.value, d.data);
break;
case 'radio':
form.radio(d.name, d.value);
break;
case 'checkbox':
form.checkbox(d.name, d.value);
break;
case 'textarea':
form.textarea(d.name, d.value);
break;
default :
form.input(d.name, d.value);
}
}
}
},
php代码
$formObj = new Form();
$select_arr = ['zulinqixian', 'chanzhengxingzhi', 'pingmiantu', 'gongrefangshi', 'xiaofangpiwen', 'zhengzhaobanli', 'shifouhanpiao', 'dizeng', 'dizengzhi', 'ya', 'fu',
'mianzuqi', 'kongtiaoleixing', 'liangyiqu', 'xiyiqu', 'tingchechangdi', 'dianti',];
foreach (json_decode($ProjectObj->getContent(), true) as $k => $v) {
if ($k == 'yuanxiaofangsheshi-1') {
$formObj->addCheckboxInput('yuanxiaofangsheshi-1', $v);
} else if ($k == 'yuanxiaofangsheshi-2') {
$formObj->addCheckboxInput('yuanxiaofangsheshi-2', $v);
} else {
if(in_array($k,$select_arr)){
$formObj->addSelect($k, $v, []);
}
}
}
   

最新文章

  1. Python的字节编译
  2. htop查看系统负载
  3. Windows xp IIS显示403错误解决方案
  4. A Byte of Python 笔记(11)异常:try..except、try..finally
  5. js 数组方法总结
  6. java 线程二
  7. 基于UDP协议的socket编程
  8. Hadoop学习笔记四
  9. FORM开发之说明性弹性域开发
  10. angular/cli 常用指令
  11. 此处为当前页,设置此处的href点后没有效果
  12. django之信号
  13. Java开发微服务为什么一定要选spring cloud?
  14. 【BZOJ1419】Red is good 期望DP
  15. sqli-labs Less-11 and Less-12
  16. 关于gitignore无效的一些记录
  17. sonarQube环境搭建--常见问题及解决
  18. Oracle性能优化之oracle中常见的执行计划及其简单解释
  19. 让FireFox支持window.event属性
  20. Appium+python自动化10-AVD 模拟器

热门文章

  1. Gridview AutoGenerateColumns属性
  2. CoreAnimation 图层几何学
  3. UNIX 网络编程知识,函数积累
  4. Eclipse使用Maven创建Web项目+整合SSM框架
  5. Python自动生产表情包
  6. 对VC++6.0爱得深沉(一)安装vc++6.0,支持winXP,win7,win8.1,win10
  7. cuda编程学习5——波纹ripple
  8. Git修改提交注释
  9. supervisor安装配置
  10. c#中遍历各种数据集合的方法