用javascript读xml的例子

用javascript读xml的例子  

1.xml文件如下:

<?xml version="1.0" encoding="UTF-8"?>
<zip>
<city>
mycity</city>
<state>mystate</state>
</zip>

2.读此xml的javascript例子:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
<script language="javascript"  type="text/javascript">

var url = "NewFile.xml";
String.prototype.Trim = function() { return this.replace(/(^/s*)|(/s*$)/g, ""); }

var xmlDoc;

 var moz = (typeof document.implementation != 'undefined')
   && (typeof document.implementation.createDocument != 'undefined');
 var ie = (typeof window.ActiveXObject != 'undefined');

function importXML(file) {

 if (moz) {
   xmlDoc = document.implementation.createDocument("", "doc", null);

 } else if (ie) {
   xmlDoc = new ActiveXObject("MSXML2.DOMDocument.3.0");
   xmlDoc.async = false;
   while(xmlDoc.readyState != 4) {};
 }
 
 xmlDoc.load(file);
}
importXML(url);

function updateCityState(){
if (moz) {
 var zip = xmlDoc.getElementsByTagName("zip")[0];
 var city;
    var _city = zip.getElementsByTagName("city")[0].firstChild.nodeValue;
      if (_city)   city = _city.Trim();
     
     var state;
     var _state=zip.getElementsByTagName("state")[0].firstChild.nodeValue;
     if(_state) state = _state.Trim();

      document.getElementById('city').value = city;
      document.getElementById('state').value = state;
     
} else if (ie) {
    var city;
    var _city = xmlDoc.selectSingleNode("/zip/city");
      if (_city) city = _city.text;
     var state;
     var _state=xmlDoc.selectSingleNode("/zip/state");
     if(_state) state = _state.text;
       document.getElementById('city').value = city;
      document.getElementById('state').value = state; 
  }   
}
</script>
</head>
<body>
<form action="post">

  <p>
  ZIP code:
  <input type="text" size="5" name="zip" id="zip" οnblur="updateCityState();" />

  </p>
  City:
  <input type="text" name="city" id="city" />

  State:
  <input type="text" size="2" name="state" id="state" />

</form>
</body>
</html>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值