Javascript 操作 Sql中的Xml 字段

在一个项目当中,我们需要把数据库中的Xml字段中的信息表现在页面中,如果用Sql进行操作,读取。这样的话,必然导致太复杂,于是我想到了,如果把Xml字段先读出来,然后用Js去操作,这样岂不是简单了许多,于是网上查找了一些资料。实现了JS读Xml字段信息的方法。

首先我们在页面中放一个TextBox 用来放Xml字段。切记:不可用Label,因为万一Xml字段信息中有“”这种符号时,页面会产生Js错误。

接下去,就是重点了。付JS代码:

[javascript] view plaincopyprint?

  1. function createXml(str){
  2.   if(document.all){
  3.     var xmlDom=new ActiveXObject("Microsoft.XMLDOM")
  4.     xmlDom.loadXML(str)
  5.     return xmlDom
  6.   }
  7.   else
  8.     return new DOMParser().parseFromString(str, "text/xml")
  9. }
  10. //以上的方法是将字符串实例化为Xml

最后就是操作这个Xml 了。。。

[javascript] view plaincopyprint?

  1. window.onload=function () {
  2. var str=document.getElementById("ctl00_ContentPlaceHolder1_TextBox1").value;
  3. var obj=createXml(str);
  4. //得到根节点
  5. var root_node=obj.documentElement;
  6. var yh1="";
  7. for (i=0;i< root_node.childNodes[0].childNodes.length-1;i++)
  8. {
  9. yh1+="   "+(i+1)+"、"+root_node.childNodes[0].childNodes[i].getAttribute("Remark")+":"+root_node.childNodes[0].childNodes[i].firstChild.nodeValue  ;
  10. yh1+="<br/>"
  11. }
  12. document.getElementById("ctl00_ContentPlaceHolder1_lblContent").innerHTML=yh1;
  13. }
  14. }

付Xml格式:

[xhtml] view plaincopyprint?

  1. <Info Remark="文件模板"><Common Remark="通用配置"><DisCopy Remark="复印件折扣">100</DisCopy><DisOriginal Remark="折扣">100</DisOriginal><ArrearageLimit Remark="欠费上限">0</ArrearageLimit><YearPrice Remark="年费,元/年">0</YearPrice></Common></Info>
时间: 2024-10-03 08:50:14

Javascript 操作 Sql中的Xml 字段的相关文章

SQL中取相同字段另一字段最大记录

sql取A字段重复记录的B字段值最大的一条记录 select max(id) id,name from 表 group by name --如果表中还有其他字段要查出,那么 select * from 表 where id in (select max(id) from 表 group by name ) 原文地址:http://blog.51cto.com/alun51cto/2087821

C#操作求出SQL中某一字段所有行的和方法!

1 DataTable table = xx.sqlcha(sql1);//调数据库 2 int v = 0; 3 foreach(DataRow row in table.Rows)//遍历所查出记录所有行 4 { 5 v = v + int.Parse(row["总金额"].ToString());//对指定字段名求和 6 } 7 string ji = "总金额:"; 8 this.toolStripStatusLabel2.Text = ji+v;//显示在

sql中的xml使用

SQL openxml用法 使用sp_xml_preparedocument处理XML文档(原文:http://www.cnblogs.com/oec2003/archive/2011/07/23/2742014.html) sp_xml_removedocument (原文:http://www.yesky.com/imagesnew/software/tsql/ts_sp_xml_8sj8.htm) sql XML操作 原文:http://www.cnblogs.com/l1pe1/arch

PHP操作Mysql中的BLOB字段

1.MySQL中BLOB字段类型 BLOB类型的字段用于存储二进制数据. MySQL中,BLOB是个类型系列,包括:TinyBlob.Blob.MediumBlob.LongBlob,这几个类型之间的唯一区别是在存储文件的最大大小上不同. MySQL的四种BLOB类型 TinyBlob:  最大 255字节 Blob:      最大 65K MediumBlob:最大 16M LongBlob:  最大 4G 注意:如果你存储的文件过大,数据库的性能会下降很多. 2.PHP操作BLOB案例 [

SQL中删除同一字段中重复的值

/////////////////////目地:ZDJZ_DIS中 name字段有重复的值,删除重复的值 DELETE * FROM ZDJZ_DIS WHERE NAME IN (select NAME from ZDJZ_DIS group by NAME having count(NAME) >1); 上面的做法会删除掉所有的相同的值,包括你想要的,只要重复就删除 DELETE * FROM ZDJZ_DIS WHERE ID in (select min(ID) from ZDJZ_DI

PL/SQL 中查询CLOB字段内容

oracle中的clob类型字段不能直接显示出来,需要借助Oracle系统dbms_lob中substr方法处理,如select dbms_lob.substr(clobField) from table 如果内容输出不全,进行如下设置 set heading off 不输出结果第一行的标题 (字段名称) set long 40000  设置输出的字节数(比较大数)

从sql中image类型字段中导出图片

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.IO; using System.Data.SqlClient; using System.Data; using System.Drawing.Imaging; using System.Drawing; namespace 获取名字 { class Program { static void Ma

SQL中查找某字段值重复或多个字段值重复的记录数

只筛选一个字段值相同的记录 select * from A where PDDT in( select PDDT FROM A group by PDDT having count(PDDT)>1 ) 筛选多个字段值相同的的记录 SELECT COUNT(*),DeptID, PDDT , DLNo , DLNoRe, MacNo FROM A GROUP BY DeptID, PDDT , DLNo , DLNoRe, MacNo having count(*)>1 原文地址:http://

sql 中判断一个字段的值是空还是有值

--len(string exepress)select yunlen,* from dbo.ctm where LEN(yunlen)=0