function FindById(parent,id)
{
var objFromChild = null ;
for (var i = 0 ; i < parent.childNodes.length ; ++i)
{
if (parent.childNodes[i].id == id)
{
return parent.childNodes[i];
}
objFromChild=FindById(parent.childNodes[i], id);
if(objFromChild!= null)
return objFromChild ;
}
return objFromChild ;
}
function FindByName(parent,n_name)
{
var objFromChild = null ;
if(parent.childNodes.length>0){
for (var i = 0 ; i < parent.childNodes.length ; ++i)
{
var node_name = parent.childNodes[i].name;
if (node_name)
{
if(node_name==n_name){
return parent.childNodes[i];
}
}
objFromChild=FindByName(parent.childNodes[i],n_name);
if(objFromChild!= null)
return objFromChild ;
}
}
return objFromChild;
}
function formToJsonStr(obj) {//提取form内容生成json格式
var inputlist=obj.getElementsByTagName("INPUT");
var selectlist=obj.getElementsByTagName("SELECT");
var textarealist=obj.getElementsByTagName("TEXTAREA");
var strJson = "{";
var chk_array=new Array();
var rdo_array=new Array();
for(var i=0;i<inputlist.length;i++){
switch(inputlist[i].type){
case "text":
strJson += "\'" + inputlist[i].name +"\':\'"+filter_str(inputlist[i].value)+"\',";
break;
case "password":
strJson += "\'" + inputlist[i].name +"\':\'"+filter_str(inputlist[i].value)+"\',";
break;
case "checkbox":
var k=0;
for(var j=0;j<chk_array.length;j++){
if(inputlist[i].name==chk_array[j][0]){k=k+1;break;}
}
if(k==0) chk_array[chk_array.length] = [inputlist[i].name];
break;
case "radio":
var k=0;
for(var j=0;j<rdo_array.length;j++){
if(inputlist[i].name==rdo_array[j][0]){k=k+1;break;}
}
if(k==0) rdo_array[rdo_array.length] = [inputlist[i].name];
break;
case "hidden":
strJson += "\'" + inputlist[i].name +"\':\'"+filter_str(inputlist[i].value)+"\',";
break;
default:break;
}
}
for(var i=0;i<chk_array.length;i++){//get check box list
var temp="";
var k=0;
for(var j=0;j<inputlist.length;j++){
if(chk_array[i][0]==inputlist[j].name && inputlist[j].checked==true){
if(k>0) temp+=",";
temp += inputlist[j].value;
k++;
}
}
strJson += "\'" + chk_array[i][0] +"\':\'"+temp+"\',";
}
for(var i=0;i<rdo_array.length;i++){//get radio list
var temp="";
for(var j=0;j<inputlist.length;j++){
if(rdo_array[i][0]==inputlist[j].name && inputlist[j].checked==true){
temp+= inputlist[j].value;
}
}
strJson += "\'" + rdo_array[i][0] +"\':\'"+temp+"\',";
}
for(var i=0;i<selectlist.length;i++){
if(selectlist[i].options.length>0){
var temp="";
var sel=selectlist[i].options.selectedIndex;
if(sel>-1) temp=selectlist[i].options[sel].value
strJson+="\'"+selectlist[i].name+"\':\'"+temp+"\',";
}else{
strJson+="\'"+selectlist[i].name+"\':\'\',";
}
}
for(var i=0;i<textarealist.length;i++){
var str=textarealist[i].value;
str=str.replace(/\r\n/g,'')
strJson += "\'" + filter_str(textarealist[i].name) +"\':\'"+str+"\',";
}
if(strJson.length>1)strJson=strJson.substr(0,strJson.length-1);
strJson+="}";
return strJson;
}
分享到:
相关推荐
描述中提到的“基于.nc4格式文件提取成json”,说明原始数据最初是以.NETCDF(Network Common Data Form)的变种——.nc4格式存储的。这种格式常用于科学计算,因为它支持大量的多维数组和元数据。为了便于在网络上...
在现代Web开发中,尤其是在React框架中,JSON生成Form表单是一种高效的方法,能够帮助开发者快速构建动态且可复用的表单组件。JSON表单的核心理念是将表单的结构、数据和逻辑通过JSON数据格式进行描述,然后在运行时...
描述中提到的“可以从PDF或从头创建令人惊叹的表单”,暗示了该开源项目具备两种主要特性:一是能够从现有的PDF文档中提取数据并转换为表单格式,这可能涉及到PDF解析和数据提取的技术;二是支持用户直接设计和创建...
`cJSONScript.cls`可能是实现了CJSONScript类,这是一个常见的JSON解析库,它能够帮助我们解析和生成JSON数据。`cStringBuilder.cls`可能是用来构建和操作字符串的类,这在处理JSON字符串时非常有用,因为JSON解析...
从提供的文件内容中,我们可以提取出几个重要的知识点,包括JSP页面编写、JSON数据格式、Ajax通信、JavaScript编程、Java类设计、Struts2框架的使用等。下面我将详细解释这些知识点。 首先,JSP(Java Server Pages...
1. JSON:是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。JSON基于JavaScript的一个子集,通常用于服务器向网页发送数据,因为它的结构与JavaScript对象相似,可以方便地被JavaScript...
在JSON中,这相当于属性的嵌套或数组索引。 ### JSON数据与JavaScript对象的转换 在提供的代码示例中,有两个主要的函数实现了表单与JSON之间的数据转换。 #### jsonObjectToForm(form, jsonObject) 这个函数的...
Json(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。它基于JavaScript的一个子集,是一种文本格式,常用于Web应用和服务器之间的数据交换。在文档中,...
在Domino环境中,代理程序经常需要与表单中的不同类型的域进行交互,以执行诸如数据提取、更新或其他操作。本文将详细介绍如何在代理程序中通过LotusScript和JavaScript两种脚本语言来获取和解析不同类型的域,特别...
JSON(JavaScript Object Notation)作为一种轻量级的数据交换格式,在Web开发中被广泛应用。其易于人阅读和编写,同时也易于机器解析和生成。本篇文章主要介绍了如何使用JSON实现前后台之间的数据传递,以及如何将...
2. **数据源**:准备省市区的数据,可以是JSON格式,存储在服务器端或者直接硬编码在JavaScript中。 3. **事件绑定**:使用layui的`form.on('select')`方法监听下拉框的改变事件,当选择项发生变化时触发处理函数。 ...
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也便于机器解析和生成。在这个例子中,JSON解析尤为重要,因为它允许程序从API获取并提取歌曲的元数据,如歌曲ID、链接等,...
- **数据绑定**:支持多种数据格式(如XML、JSON等),并通过API轻松实现数据绑定。 - **自定义列**:允许开发者灵活设置表格的列属性,如宽度、对齐方式、数据类型等。 - **交互性**:提供良好的用户体验,包括行...
Avalingua-form 是一个基于JavaScript的工具,主要用于简化Avalingua-DepPattern的语法规则生成过程。Avalingua是一个语言处理框架,它专注于语言分析和生成,特别是依赖性模式(Dependency Patterns),这是一种...
在前端开发中,特别是涉及到表单数据时,我们经常需要将用户填写的信息转换为服务器可以理解的格式,JSON(JavaScript Object Notation)就是一种常见的、轻量级的数据交换格式,易于人阅读和编写,同时也易于机器...
4. **JSON对象**: JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。在本项目中,JSON对象用于传输图像和其他元数据。 **项目实现步骤** 1. **初始化...
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。在VB中,我们可以使用内置的Json.NET库或者Newtonsoft.Json库来解析JSON数据。解析完成后,我们就...
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。XML(eXtensible Markup Language)则是一种更结构化的数据格式,对于复杂的数据交换非常有用。选择...
JSON(JavaScript Object Notation)则更轻量级,是用于交换数据的常用格式,易于阅读和编写,也易于机器解析和生成。 解析XML或JSON数据时,ASP可以使用内置的DOM(Document Object Model)对象或第三方库,如...
4. **响应处理**:`login.php`根据验证结果生成JSON或XML响应,包含状态码和消息。JavaScript的AJAX回调函数接收到响应后,根据状态码更新页面内容,如显示登录成功或失败的消息。 5. **用户体验优化**:为了提高...