锘??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲爆乳无码精品AAA片蜜桃,亚洲欧美熟妇综合久久久久,亚洲国产精品一区二区第一页http://www.tkk7.com/xzclog/category/17318.htmlzh-cnSat, 09 Jul 2011 04:31:52 GMTSat, 09 Jul 2011 04:31:52 GMT60js 楂樼駭緙栫▼http://www.tkk7.com/xzclog/archive/2011/07/09/353978.htmlxzcxzcSat, 09 Jul 2011 03:34:00 GMThttp://www.tkk7.com/xzclog/archive/2011/07/09/353978.htmlhttp://www.tkk7.com/xzclog/comments/353978.htmlhttp://www.tkk7.com/xzclog/archive/2011/07/09/353978.html#Feedback0http://www.tkk7.com/xzclog/comments/commentRss/353978.htmlhttp://www.tkk7.com/xzclog/services/trackbacks/353978.html

鐮旂┒鍙戠幇錛氬睘鎬э紙鍙橀噺錛夊彲鍒嗕負涓夌被錛堝璞″睘鎬с佸叏灞鍙橀噺鍜屽眬閮ㄥ彉閲忥級
瀵硅薄灞炴э細澹版槑鏃朵互“this.”寮澶達紝鍙兘琚?#8220;綾葷殑瀹炰緥”鍗沖璞℃墍璋冪敤錛屼笉鑳借“綾誨唴閮紙瀵瑰涓嶅鍐咃級”璋冪敤錛涘叏灞鍙橀噺錛氬0鏄庢椂鐩存帴浠ュ彉閲忓悕寮澶達紝鍙互浠繪剰璋冪敤錛堝鍐呭澶栵級錛涘眬閮ㄥ彉閲忥細鍙兘琚?/p>

“綾誨唴閮紙瀵瑰唴涓嶅澶栵級”璋冪敤銆?/p>

 

JS鍑芥暟鐨勫0鏄庝笌璁塊棶鍘熺悊

<script type="text/javascript">  
//綾?nbsp; 
var testClass = function(){  
  //瀵硅薄灞炴?瀵瑰涓嶅鍐?綾昏皟鐢?  
  this.age ="25";  
  //鍏ㄥ眬鍙橀噺(瀵瑰唴瀵瑰)  
  name="jack";  
  //灞閮ㄥ彉閲?瀵瑰唴涓嶅澶?
  var address = "beijing";
    
  //鍏ㄥ眬鍑芥暟錛堝鍐呭澶栵級  
  add = function(a,b){  
    //鍙闂細鍏ㄥ眬鍙橀噺鍜屽眬閮ㄥ彉閲?nbsp; 
    multiply(a,b);  
    return a+b;  
  }  
  //瀹炰緥鍑芥暟錛堢敱綾葷殑瀵硅薄璋冪敤錛?nbsp; 
  this.minus = function(a,b){  
    //鍙互璁塊棶錛氬璞″睘鎬с佸叏灞鍙橀噺鍜屽眬閮ㄥ彉閲?nbsp; 
    return a-b;  
  }  
  //灞閮ㄥ嚱鏁幫紙鍐呴儴鐩存帴璋冪敤錛?nbsp; 
  var multiply = function(a,b){  
    //鍙兘璁塊棶錛氬叏灞鍙橀噺鍜屽眬閮ㄥ彉閲?nbsp; 
    return a*b;  
  }  
}  
 
 
//綾誨嚱鏁幫紙鐢辯被鍚嶇洿鎺ヨ皟鐢級  
testClass.talk= function(){  
  //鍙兘璁塊棶錛氬叏灞鍙橀噺鍜屽叏灞鍑芥暟  
  this.what = function(){  
    alert("What can we talk about?");  
    about();  
  }  
    
  var about = function(){  
    alert("about name錛?+name);
    alert("about add(1,1):"+add(1,1));
  }  
}  
 
 
//鍘熷瀷鍑芥暟(鐢辯被鐨勫璞¤皟鐢?  
testClass.prototype.walk = function(){  
  //鍙兘璁塊棶:鍏ㄥ眬鍙橀噺鍜屽叏灞鍑芥暟  
  this.where = function(){  
    alert("Where can we go?");
    go();  
  }  
    
  var go = function(){  
    alert("go name:"+name); 
    alert("go add(1,1):"+add(1,1));
  }  
}  
</script> 


涓嬮潰鐪嬬湅濡備綍璋冪敤:

<script type="text/javascript">  
//鑾峰彇涓涓猚bs綾葷殑瀹炰緥  
var cbs= new testClass();  
//璋冪敤綾葷殑瀵硅薄灞炴ge  
alert("age:"+cbs.age);  
 
//鑾峰彇綾誨嚱鏁皌alk鐨勫疄渚?nbsp; 
var talk = new testClass.talk();
//璋冪敤綾誨嚱鏁扮殑瀹炰緥鍑芥暟  
talk.what();  
 
//鑾峰彇鍘熷瀷鍑芥暟walk鐨勫疄渚?nbsp; 
var walk = new cbs.walk();  
//璋冪敤鍘熷瀷鍑芥暟鐨勫疄渚嬪嚱鏁?nbsp; 
walk.where();  
</script> 



xzc 2011-07-09 11:34 鍙戣〃璇勮
]]>
褰揂jax閬亣GBK緙栫爜 (瀹屽叏瑙e喅鏂規) http://www.tkk7.com/xzclog/archive/2011/06/21/352729.htmlxzcxzcTue, 21 Jun 2011 03:54:00 GMThttp://www.tkk7.com/xzclog/archive/2011/06/21/352729.htmlhttp://www.tkk7.com/xzclog/comments/352729.htmlhttp://www.tkk7.com/xzclog/archive/2011/06/21/352729.html#Feedback0http://www.tkk7.com/xzclog/comments/commentRss/352729.htmlhttp://www.tkk7.com/xzclog/services/trackbacks/352729.html 

鏃╄搗鐨勫浗鍐呬簰鑱旂綉閮戒嬌鐢℅BK緙栫爜錛屼箙涔嬶紝鎵鏈夐」鐩兘浠BK鏉ョ紪鐮佷簡銆傚浜嶫2EE欏圭洰錛屼負浜嗗噺灝戠紪鐮佺殑騫叉壈閫氬父閮芥槸璁劇疆涓涓紪鐮佺殑Filter錛屽己鍒跺皢Request/Response緙栫爜鏀逛負GBK銆備緥濡備竴涓猄pring鐨勫父瑙侀厤緗涓嬶細

 

<filter>
    <filter-name>encodingFilter</filter-name>
    <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
    <init-param>
        <param-name>encoding</param-name>
        <param-value>GBK</param-value>
    </init-param>
    <init-param>
        <param-name>forceEncoding</param-name>
        <param-value>true</param-value>
    </init-param>
</filter>

姣棤鐤戦棶錛岃繖鍦℅BK緙栫爜鐨勯〉闈㈣闂佹彁浜ゆ暟鎹椂鏄病鏈変貢鐮侀棶棰樼殑銆備絾鏄亣鍒癆jax灝變笉涓鏍蜂簡銆侫jax寮哄埗灝嗕腑鏂囧唴瀹硅繘琛孶TF-8緙栫爜錛岃繖鏍峰鑷磋繘鍏ュ悗绔悗浣跨敤GBK榪涜瑙g爜鏃跺彂鐢熶貢鐮併傜綉涓婄殑鎵璋撶殑緇堟瀬瑙e喅鏂規閮芥槸鎵貳鎴栬呰繃浜庡鏉傦紝渚嬪涓嬮潰鐨勬枃绔狅細

榪欐牱鐨勬枃绔犲緢澶氾紝鏄劇劧錛?/p>

  • 浣跨敤VB榪涜UTF-8杞崲鎴怗BK鎻愪氦鏄畬鍏ㄤ笉鍙錛堝嫻忚鍣ㄣ佸騫沖彴瀹屽叏涓嶅彲鐢級
  • 浣跨敤澶嶆潅鐨刯s鍑芥暟榪涜涓嬈°佸嬈$紪鐮侊紝鍚庣榪涜涓嬈°佸嬈¤В鐮佷篃鏄笉闈犺氨鐨勶紝鎴愭湰澶珮錛屾棤娉曢噸澶嶄嬌鐢?/li>

濡傛灉鎻愪氦鏁版嵁鐨勬椂鍊欒兘澶熷憡璇夊悗绔紶杈撶殑緙栫爜淇℃伅鏄惁灝卞彲浠ラ伩鍏嶈繖縐嶉棶棰橈紵姣斿Ajax璇鋒眰鍛婅瘔鍚庣鏄疷TF-8錛屽叾瀹冭姹傚憡璇夊悗绔槸GBK錛岃繖鏍峰悗绔垎鍒牴鎹寚瀹氱殑緙栫爜榪涜瑙g爜鏄笉鏄氨瑙e喅闂浜嗐?/p>

鏈変袱涓棶棰橈細

  1. 濡備綍閫氳繃Ajax鍛婅瘔鍚庣鐨勭紪鐮侊紵Header榪囦簬澶嶆潅錛孋ookie鎴愭湰澶珮錛屼嬌鐢ㄥ弬鏁版渶鏂逛究銆?/li>
  2. 鍚庣浣曟椂榪涜瑙g爜錛熸瘡涓涓姹傝繘琛岃В鐮侊紝榪囦簬綣佺悙錛涜幏鍙栧弬鏁版椂瑙g爜錛屾鏃跺凡緇忎貢鐮侊紱鍦‵ilter閲岄潰鍔ㄦ佽緗紪鐮佹槸鏈瀹屽杽鐨勬柟妗堛?/li>
  3. 濡備綍浠庡弬鏁頒腑鑾峰彇緙栫爜錛熷鏋滄槸POST鐨刡ody鏄劇劧鏃犳硶鑾峰彇錛屽洜姝ゅ湪鑾峰彇涔嬪墠鎵鏈夊弬鏁板氨宸茬粡鎸夌収鏌愮緙栫爜瑙g爜榪囦簡錛屾棤娉曡繕鍘熴傛墍浠ラ氳繃URL浼犻掔紪鐮佹渶鏈夋晥銆傛敮鎸丟ET/POST錛屽悓鏃舵垚鏈緢浣庛?/li>

瑙e喅浜嗕笂榪伴棶棰橈紝鏉ョ湅鍏蜂綋瀹炵幇鏂規銆?鍒椾竴孌礘ava浠g爜錛?/p>

import java.io.IOException;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

import javax.servlet.FilterChain;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.springframework.util.ClassUtils;
import org.springframework.web.filter.OncePerRequestFilter;

/** 鑷畾涔夌紪鐮佽繃婊ゅ櫒
 * @author imxylz (imxylz#gmail.com)
 * @sine 2011-6-9
 */
public class MutilCharacterEncodingFilter extends OncePerRequestFilter {

    static final Pattern inputPattern = Pattern.compile(".*_input_encode=([\\w-]+).*");

    static final Pattern outputPattern = Pattern.compile(".*_output_encode=([\\w-]+).*");

    // Determine whether the Servlet 2.4 HttpServletResponse.setCharacterEncoding(String)
    // method is available, for use in the "doFilterInternal" implementation.
    private final static boolean responseSetCharacterEncodingAvailable = ClassUtils.hasMethod(HttpServletResponse.class,
          "setCharacterEncoding", new Class[] { String.class });

    private String encoding;

    private boolean forceEncoding = false;

    @Override
    protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain filterChain)
 throws ServletException, IOException {
        String url = request.getQueryString();
        Matcher m = null;
        if (url != null && (m = inputPattern.matcher(url)).matches()) {//杈撳叆緙栫爜
            String inputEncoding = m.group(1);
            request.setCharacterEncoding(inputEncoding);
            m = outputPattern.matcher(url);
            if (m.matches()) {//杈撳嚭緙栫爜
                response.setCharacterEncoding(m.group(1));
            } else {
                if (this.forceEncoding && responseSetCharacterEncodingAvailable) {
                    response.setCharacterEncoding(this.encoding);
                }
            }
        } else {
            if (this.encoding != null && (this.forceEncoding || request.getCharacterEncoding() == null)) {
                request.setCharacterEncoding(this.encoding);
                if (this.forceEncoding && responseSetCharacterEncodingAvailable) {
                    response.setCharacterEncoding(this.encoding);
                }
            }
        }
        filterChain.doFilter(request, response);
    }

    public void setEncoding(String encoding) {
        this.encoding = encoding;
    }

    public void setForceEncoding(boolean forceEncoding) {
        this.forceEncoding = forceEncoding;
    }
}

瑙i噴涓嬶細

  • 濡傛灉URL鐨凲ueryString涓寘鍚玙input_encode灝變嬌鐢ㄦ緙栫爜榪涜璁劇疆Request緙栫爜錛屼互鍚庡弬鏁版寜鐓ф緙栫爜榪涜瑙f瀽錛屼緥濡傚鏋滄槸Ajax灝變紶鍏TF-8錛屽鏋滄槸鏅氱殑GBK璇鋒眰鍒欐棤瑙嗘鍙傛暟銆?/li>
  • 濡傛灉鏃犺姝ゅ弬鏁幫紝鍒欐寜鐓eb.xml涓厤緗殑緙栫爜瑙勫垯榪涜鍙嶇紪鐮侊紝濡傛灉鏄疓BK灝辨寜鐓BK瑙勫垯瑙f瀽銆?/li>
  • 瀵逛簬杈撳嚭緙栫爜鍚屾牱浣跨敤涓婅堪瑙勫垯銆傞渶瑕佽緭鍑虹紪鐮佷緷璧栬緭鍏ョ紪鐮侊紝涔熷氨鏄濡傛灉鏈変竴涓猒output_encode鐨勮緭鍑虹紪鐮侊紝鍒欏悓鏃墮渶瑕佹湁涓涓猒input_encode緙栫爜鏉ユ寚瀹氳緭鍏ョ紪鐮併傚綋鐒朵綘鍙互鏀歸犳垚涓嶄緷璧栬緭鍏ョ紪鐮併?/li>
  • 瀹屽叏鍏煎Spring鐨刼rg.springframework.web.filter.CharacterEncodingFilter緙栫爜瑙勫垯錛屽彧闇瑕佹浛鎹㈢被鍗沖彲銆?/li>
  • 娌℃湁緇ф壙org.springframework.web.filter.CharacterEncodingFilter綾葷殑鍘熷洜鏄紝org.springframework.web.filter.CharacterEncodingFilter閲岄潰鐨別ncoding鍙傛暟鍜宖orceEncoding鍙傛暟鏄痯rivate錛屽瓙綾繪棤娉曚嬌鐢ㄣ傚湪鏈塤input_encode鑰屾棤_output_encode鐨勬椂鍊欐兂渚濈劧淇濇寔Spring鐨凴esponse瑙f瀽瑙勫垯鐨勮瘽鏃犳硶鍋氬埌錛屾墍浠ュ皢閲岄潰鐨勪唬鐮佹嫹璐濊繃鏉ヤ嬌鐢ㄣ傦紙涓轟簡灞曠ず鏂逛究錛屾敞閲婇兘鍒犳帀浜嗭級
  • 姝e垯琛ㄨ揪寮忓彲浠ユ敼榪涙垚鍙渶瑕佸尮閰嶄竴嬈★紝浠庤屽彲浠ユ彁楂樹竴鐐圭偣鏁堢巼銆?/li>
  • 鎵鏈夊悗绔姹傚皢鏃犺緙栫爜鐨勫瓨鍦紝鍓嶇Ajax鐨凣ET/POST璇鋒眰涔熷皢鏃犺緙栫爜鐨勫瓨鍦紝鍙槸鍦║RL鍦板潃涓姞涓婁竴涓猒input_encode=UTF-8鐨勫弬鏁般備粎姝よ屽凡銆?/li>
  • 濡傛灉鎯寵緭鍑虹殑緙栫爜涔熸槸UTF-8錛屾瘮濡傛墜鏈虹璇鋒眰銆佽法绔欒姹傜瓑錛屽垯闇瑕乁RL鍦板潃鍙傛暟_input_encode=UTF-8&_output_encode=UTF-8銆?/li>
  • 瀵逛簬POST璇鋒眰錛岀紪鐮佸弬鏁頒笉鑳藉啓鍦╞ody閲岄潰錛屽惁鍒欐棤娉曡В鏋愩?/li>
  • 鏄劇劧錛岃繖縐嶇粓鏋佽В鍐蟲柟妗堬紝鍦ㄤ換浣曠紪鐮佷腑閮藉彲浠ヨВ鍐籌紝GBK/UTF-8/ISO8859-1絳夌紪鐮佷換浣曠粍鍚堥兘鍙互瀹炵幇銆?br />
  • 鍞竴灞闄愭ф槸錛屾瑙e喅鏂規闄愬埗鍦↗2EE欏圭洰涓紝鍏跺畠騫沖彴涓嶇煡鏄惁鏈夌被浼糉ilter榪欐牱鐨勭粍浠惰兘澶熻緗紪鐮佺殑姒傚康銆?/li>



xzc 2011-06-21 11:54 鍙戣〃璇勮
]]>
Dom4j鐨勪嬌鐢?鍏ㄨ屽ソ鐨勬枃绔?http://www.tkk7.com/xzclog/archive/2008/10/31/237777.htmlxzcxzcFri, 31 Oct 2008 03:33:00 GMThttp://www.tkk7.com/xzclog/archive/2008/10/31/237777.htmlhttp://www.tkk7.com/xzclog/comments/237777.htmlhttp://www.tkk7.com/xzclog/archive/2008/10/31/237777.html#Feedback0http://www.tkk7.com/xzclog/comments/commentRss/237777.htmlhttp://www.tkk7.com/xzclog/services/trackbacks/237777.html闃呰鍏ㄦ枃

xzc 2008-10-31 11:33 鍙戣〃璇勮
]]>
緇忓吀姝e垯琛ㄨ揪寮?Javascript [ZT]http://www.tkk7.com/xzclog/archive/2007/03/16/104313.htmlxzcxzcFri, 16 Mar 2007 09:08:00 GMThttp://www.tkk7.com/xzclog/archive/2007/03/16/104313.htmlhttp://www.tkk7.com/xzclog/comments/104313.htmlhttp://www.tkk7.com/xzclog/archive/2007/03/16/104313.html#Feedback0http://www.tkk7.com/xzclog/comments/commentRss/104313.htmlhttp://www.tkk7.com/xzclog/services/trackbacks/104313.html鎽樿錛氭敹闆嗕竴浜涘父鐢ㄧ殑姝e垯琛ㄨ揪寮忋?/p>

姝e垯琛ㄨ揪寮忕敤浜庡瓧絎︿覆澶勭悊錛岃〃鍗曢獙璇佺瓑鍦哄悎錛屽疄鐢ㄩ珮鏁堬紝浣嗙敤鍒版椂鎬繪槸涓嶅お鎶婃彙錛屼互鑷村線寰瑕佷笂緗戞煡涓鐣傛垜灝嗕竴浜涘父鐢ㄧ殑琛ㄨ揪寮忔敹钘忓湪榪欓噷錛屼綔澶囧繕涔嬬敤銆傛湰璐撮殢鏃朵細鏇存柊銆?br />
鍖歸厤涓枃瀛楃鐨勬鍒欒〃杈懼紡錛?/p>

[ \ u4e00 -\ u9fa5 ]

鍖歸厤鍙屽瓧鑺傚瓧絎?鍖呮嫭姹夊瓧鍦ㄥ唴)錛?/p>

[ ^\ x00 -\ xff ]

搴旂敤錛氳綆楀瓧絎︿覆鐨勯暱搴︼紙涓涓弻瀛楄妭瀛楃闀垮害璁?錛孉SCII瀛楃璁?錛?/p>

String . prototype . len = function (){ return this . replace ([ ^\ x00 -\ xff ] / g,"aa").length; }

鍖歸厤絀鴻鐨勬鍒欒〃杈懼紡錛?/p>

\ n [ \ s | ] *\ r

鍖歸厤HTML鏍囪鐨勬鍒欒〃杈懼紡錛?/p>

/ <(.*)>.*< \/ \1>|<(.*) \/ > /

鍖歸厤棣栧熬絀烘牸鐨勬鍒欒〃杈懼紡錛?/p>

( ^\ s * ) | ( \ s *$ )

搴旂敤錛歫 avascript涓病鏈夊儚v bscript閭f牱鐨則rim鍑芥暟錛屾垜浠氨鍙互鍒╃敤榪欎釜琛ㄨ揪寮忔潵瀹炵幇錛屽涓嬶細

String . prototype . trim = function ()
{
聽聽 聽
return this . replace ( / (^\s*)|(\s*$) /g , "" ) ;
}

鍒╃敤姝e垯琛ㄨ揪寮忓垎瑙e拰杞崲IP鍦板潃
涓嬮潰鏄埄鐢ㄦ鍒欒〃杈懼紡鍖歸厤IP鍦板潃錛屽茍灝咺P鍦板潃杞崲鎴愬搴旀暟鍊肩殑Javascript紼嬪簭錛?/p>

function IP2V ( ip )
{
聽聽 聽
re = / (\d+)\.(\d+)\.(\d+)\.(\d+) /g //鍖歸厤IP鍦板潃鐨勬鍒欒〃杈懼紡
聽聽 聽
if ( re . test ( ip ))
聽聽 聽
{
聽聽 聽 聽 聽
return RegExp .$ 1 * Math . pow ( 255 , 3 ) )+ RegExp .$ 2 * Math . pow ( 255 , 2 ) )+ RegExp .$ 3 * 255 + RegExp .$ 4 * 1
聽聽 聽
}
聽聽 聽
else
聽聽 聽
{
聽聽 聽 聽 聽
throw new Error ( " Not a valid IP address! " )
聽聽 聽
}
}

涓嶈繃涓婇潰鐨勭▼搴忓鏋滀笉鐢ㄦ鍒欒〃杈懼紡錛岃岀洿鎺ョ敤split鍑芥暟鏉ュ垎瑙e彲鑳芥洿綆鍗曪紝紼嬪簭濡備笅錛?/p>

var ip = " 10.100.20.168 "
ip = ip . split ( " . " )
alert ( " IP鍊兼槸錛?/span> " + ( ip [ 0 ] * 255 * 255 * 255 + ip [ 1 ] * 255 * 255 + ip [ 2 ] * 255 + ip [ 3 ] * 1 ))

鍖歸厤Email鍦板潃鐨勬鍒欒〃杈懼紡錛?/p>

\ w + ([ -+. ] \ w + ) *@\ w + ([ -. ] \ w + ) *\.\ w + ([ -. ] \ w + ) *

鍖歸厤緗戝潃URL鐨勬鍒欒〃杈懼紡錛?/p>

http : //([\w-]+\.)+[\w-]+(/[\w- ./?%&=]*)?

鍒╃敤姝e垯琛ㄨ揪寮忓幓闄ゅ瓧涓蹭腑閲嶅鐨勫瓧絎︾殑綆楁硶紼嬪簭錛歔*娉細姝ょ▼搴忎笉姝g‘]

var s = " abacabefgeeii "
var s1 = s . replace ( / (.).*\1 /g , " $1 " )
var re = new RegExp ( " [ " + s1 + " ] " , " g " )
var s2 = s . replace ( re , "" )
alert ( s1 + s2 ) //緇撴灉涓猴細abcefgi

*娉?br />===============================
濡傛灉var s = 鈥渁bacabefggeeii鈥?br />緇撴灉灝變笉瀵逛簡錛岀粨鏋滀負錛歛beicfgg
姝e垯琛ㄨ揪寮忕殑鑳藉姏鏈夐檺
===============================

鎴戝師鏉ュ湪CSDN涓婂彂璐村姹備竴涓〃杈懼紡鏉ュ疄鐜板幓闄ら噸澶嶅瓧絎︾殑鏂規硶錛屾渶緇堟病鏈夋壘鍒幫紝榪欐槸鎴戣兘鎯沖埌鐨勬渶綆鍗曠殑瀹炵幇鏂規硶銆傛濊礬鏄嬌鐢ㄥ悗鍚戝紩鐢ㄥ彇鍑哄寘鎷噸澶嶇殑瀛楃錛屽啀浠ラ噸澶嶇殑瀛楃寤虹珛絎簩涓〃杈懼紡錛屽彇鍒頒笉閲嶅鐨勫瓧絎︼紝涓よ呬覆榪炪傝繖涓柟娉曞浜庡瓧絎﹂『搴忔湁瑕佹眰鐨勫瓧絎︿覆鍙兘涓嶉傜敤銆?/p>

寰楃敤姝e垯琛ㄨ揪寮忎粠URL鍦板潃涓彁鍙栨枃浠跺悕鐨刯avascript紼嬪簭錛屽涓嬬粨鏋滀負page1

s = " http://blog.penner.cn/page1.htm "
s = s . replace ( / (.* \/ ){ 0, }([^\.]+).* /i g , " $2 " )
alert ( s )

鍒╃敤姝e垯琛ㄨ揪寮忛檺鍒剁綉欏佃〃鍗曢噷鐨勬枃鏈杈撳叆鍐呭錛?/p>

鐢ㄦ鍒欒〃杈懼紡闄愬埗鍙兘杈撳叆涓枃錛?/p>

onkeyup = " value=value.replace(/[^\u4E00-\u9FA5]/g,'') " onbeforepaste = " clipboardData.setData('text',clipboardData.getData('text').replace(/[^\u4E00-\u9FA5]/g,'')) "

鐢ㄦ鍒欒〃杈懼紡闄愬埗鍙兘杈撳叆鍏ㄨ瀛楃錛?/p>

onkeyup = " value=value.replace(/[^\uFF00-\uFFFF]/g,'') " onbeforepaste = " clipboardData.setData('text',clipboardData.getData('text').replace(/[^\uFF00-\uFFFF]/g,'')) "

鐢ㄦ鍒欒〃杈懼紡闄愬埗鍙兘杈撳叆鏁板瓧錛?/p>

onkeyup = " value=value.replace(/[^\d]/g,'') " onbeforepaste = " clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,'')) "

鐢ㄦ鍒欒〃杈懼紡闄愬埗鍙兘杈撳叆鏁板瓧鍜岃嫳鏂囷細

onkeyup = " value=value.replace(/[\W]/g,'') " onbeforepaste = " clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,'')) "

鍖歸厤闈炶礋鏁存暟錛堟鏁存暟 + 0錛?/p>

^\ d +$

鍖歸厤姝f暣鏁?/p>

^ [ 0 - 9 ] * [ 1 - 9 ][ 0 - 9 ] *$

鍖歸厤闈炴鏁存暟錛堣礋鏁存暟 + 0錛?/p>

^ (( -\ d + ) | ( 0 + )) $

鍖歸厤璐熸暣鏁?/p>

^- [ 0 - 9 ] * [ 1 - 9 ][ 0 - 9 ] *$

鍖歸厤鏁存暟

^-?\ d +$

鍖歸厤闈炶礋嫻偣鏁幫紙姝f誕鐐規暟 + 0錛?/p>

^\ d + ( \.\ d + ) ?$

鍖歸厤姝f誕鐐規暟

^ (([ 0 - 9 ] +\. [ 0 - 9 ] * [ 1 - 9 ][ 0 - 9 ] * ) | ([ 0 - 9 ] * [ 1 - 9 ][ 0 - 9 ] *\. [ 0 - 9 ] + ) | ([ 0 - 9 ] * [ 1 - 9 ][ 0 - 9 ] * )) $

鍖歸厤闈炴嫻偣鏁幫紙璐熸誕鐐規暟 + 0錛?/p>

^ (( -\ d + ( \.\ d + ) ? ) | ( 0 + ( \ .0 + ) ? )) $

鍖歸厤璐熸誕鐐規暟

^ ( - (([ 0 - 9 ] +\. [ 0 - 9 ] * [ 1 - 9 ][ 0 - 9 ] * ) | ([ 0 - 9 ] * [ 1 - 9 ][ 0 - 9 ] *\. [ 0 - 9 ] + ) | ([ 0 - 9 ] * [ 1 - 9 ][ 0 - 9 ] * ))) $

鍖歸厤嫻偣鏁?/p>

^ ( -?\ d + )( \.\ d + ) ?$

鍖歸厤鐢?6涓嫳鏂囧瓧姣嶇粍鎴愮殑瀛楃涓?/p>

^ [ A - Za - z ] +$

鍖歸厤鐢?6涓嫳鏂囧瓧姣嶇殑澶у啓緇勬垚鐨勫瓧絎︿覆

^ [ A - Z ] +$

鍖歸厤鐢?6涓嫳鏂囧瓧姣嶇殑灝忓啓緇勬垚鐨勫瓧絎︿覆

^ [ a - z ] +$

鍖歸厤鐢辨暟瀛楀拰26涓嫳鏂囧瓧姣嶇粍鎴愮殑瀛楃涓?/p>

^ [ A - Za - z0 - 9 ] +$

鍖歸厤鐢辨暟瀛椼?6涓嫳鏂囧瓧姣嶆垨鑰呬笅鍒掔嚎緇勬垚鐨勫瓧絎︿覆

^\ w +$

鍖歸厤email鍦板潃

^ [ \ w - ] + ( \. [ \ w - ] + ) *@ [ \ w - ] + ( \. [ \ w - ] + ) +$

鍖歸厤url

^ [ a - zA - z ] +: //鍖歸厤(\w+(-\w+)*)(\.(\w+(-\w+)*))*(\?\S*)?$

鍖歸厤html tag

<\ s * ( \ S + )( \ s [ ^> ] * ) ?> ( .*? ) <\ s *\ / \1\s*>

Visual Basic & C# Regular Expression
1.紜鏈夋晥鐢靛瓙閭歡鏍煎紡
涓嬮潰鐨勭ず渚嬩嬌鐢ㄩ潤鎬?Regex.IsMatch 鏂規硶楠岃瘉涓涓瓧絎︿覆鏄惁涓烘湁鏁堢數瀛愰偖浠舵牸寮忋傚鏋滃瓧絎︿覆鍖呭惈涓涓湁鏁堢殑鐢靛瓙閭歡鍦板潃錛屽垯 IsValidEmail 鏂規硶榪斿洖 true錛屽惁鍒欒繑鍥?false錛屼絾涓嶉噰鍙栧叾浠栦換浣曟搷浣溿傛偍鍙互浣跨敤 IsValidEmail錛屽湪搴旂敤紼嬪簭灝嗗湴鍧瀛樺偍鍦ㄦ暟鎹簱涓垨鏄劇ず鍦?ASP.NET 欏典腑涔嬪墠錛岀瓫閫夊嚭鍖呭惈鏃犳晥瀛楃鐨勭數瀛愰偖浠跺湴鍧銆?/p>

[Visual Basic]

Function IsValidEmail(strIn As String) As Boolean
' Return true if strIn is in valid e-mail format.
Return Regex.IsMatch(strIn, ("^([\w-\.]+)@((\[[0-9]{ 1,3 }\.[0-9]{ 1,3 }\.[0-9]{ 1,3 }\.)|(([\w-]+\.)+))([a-zA-Z]{ 2,4 }|[0-9]{ 1,3 })(\]?)$")
End Function

[C#]

bool IsValidEmail(string strIn)
{
// Return true if strIn is in valid e-mail format.
return Regex.IsMatch(strIn, @"^([\w-\.]+)@((\[[0-9]{ 1,3 }\.[0-9]{ 1,3 }\.[0-9]{ 1,3 }\.)|(([\w-]+\.)+))([a-zA-Z]{ 2,4 }|[0-9]{ 1,3 })(\]?)$");
}

2.娓呯悊杈撳叆瀛楃涓?br />涓嬮潰鐨勪唬鐮佺ず渚嬩嬌鐢ㄩ潤鎬?Regex.Replace 鏂規硶浠庡瓧絎︿覆涓娊鍑烘棤鏁堝瓧絎︺傛偍鍙互浣跨敤榪欓噷瀹氫箟鐨?CleanInput 鏂規硶錛屾竻闄ゆ帀鍦ㄦ帴鍙楃敤鎴瘋緭鍏ョ殑紿椾綋鐨勬枃鏈瓧孌典腑杈撳叆鐨勫彲鑳芥湁瀹崇殑瀛楃銆侰leanInput 鍦ㄦ竻闄ゆ帀闄?@銆?錛堣繛瀛楃錛夊拰 .錛堝彞鐐癸級浠ュ鐨勬墍鏈夐潪瀛楁瘝鏁板瓧瀛楃鍚庤繑鍥炰竴涓瓧絎︿覆銆?/p>

[Visual Basic]

Function CleanInput(strIn As String) As String
' Replace invalid characters with empty strings.
Return Regex.Replace(strIn, "[^\w\.@-]", "")
End Function

[C#]

String CleanInput(string strIn)
{
聽聽 聽// Replace invalid characters with empty strings.
聽聽 聽return Regex.Replace(strIn, @"[^\w\.@-]", "");
}

3.鏇存敼鏃ユ湡鏍煎紡
浠ヤ笅浠g爜紺轟緥浣跨敤 Regex.Replace 鏂規硶鏉ョ敤 dd-mm-yy 鐨勬棩鏈熷艦寮忎唬鏇?mm/dd/yy 鐨勬棩鏈熷艦寮忋?/p>

[Visual Basic]

Function MDYToDMY(input As String) As String
Return Regex.Replace(input, _
"\b(?<month>\d{ 1,2 })/(?<day>\d{ 1,2 })/(?<year>\d{ 2,4 })\b", _
"${ day }-${ month }-${ year }")
End Function

[C#]

String MDYToDMY(String input)
{
聽聽 聽return Regex.Replace(input,"\\b(?<month>\\d{ 1,2 })/(?<day>\\d{ 1,2 })/(?<year>\\d{ 2,4 })\\b","${ day }-${ month }-${ year }");
}

Regex 鏇挎崲妯″紡
鏈ず渚嬭鏄庡浣曞湪 Regex.Replace 鐨勬浛鎹㈡ā寮忎腑浣跨敤鍛藉悕鐨勫弽鍚戝紩鐢ㄣ傚叾涓紝鏇挎崲琛ㄨ揪寮?${ day } 鎻掑叆鐢?(?鈥? 緇勬崟鑾風殑瀛愬瓧絎︿覆銆?/day>

鏈夊嚑縐嶉潤鎬佸嚱鏁頒嬌鎮ㄥ彲浠ュ湪浣跨敤姝e垯琛ㄨ揪寮忔搷浣滄椂鏃犻渶鍒涘緩鏄懼紡姝e垯琛ㄨ揪寮忓璞★紝鑰?Regex.Replace 鍑芥暟姝f槸鍏朵腑涔嬩竴銆傚鏋滄偍涓嶆兂淇濈暀緙栬瘧鐨勬鍒欒〃杈懼紡錛岃繖灝嗙粰鎮ㄥ甫鏉ユ柟渚?/p>

4.鎻愬彇 URL 淇℃伅
浠ヤ笅浠g爜紺轟緥浣跨敤 Match.Result 鏉ヤ粠 URL 鎻愬彇鍗忚鍜岀鍙e彿銆備緥濡傦紝鈥渉ttp://www.penner.cn:8080鈥︹﹀皢榪斿洖鈥渉ttp:8080鈥濄?/p>

[Visual Basic]

Function Extension(url As String) As String
Dim r As New Regex("^(?<proto>\w+)://[^/]+?(?<port>:\d+)?/", _
RegexOptions.Compiled)
Return r.Match(url).Result("${ proto }${ port }")
End Function

[C#]

String Extension(String url)
{
聽聽 聽Regex r = new Regex(@"^(?<proto>\w+)://[^/]+?(?<port>:\d+)?/",
聽聽 聽RegexOptions.Compiled);
聽聽 聽return r.Match(url).Result("${ proto }${ port }");
}

鍙湁瀛楁瘝鍜屾暟瀛楋紝涓嶅皬浜?浣嶏紝涓旀暟瀛楀瓧姣嶉兘鍖呭惈鐨勫瘑鐮佺殑姝e垯琛ㄨ揪寮?br />鍦–#涓紝鍙互鐢ㄨ繖涓潵琛ㄧず錛?/p>

" \w{ 6 }(\w+)* "

涓涓皢闇瑕佸皢璺緞瀛楃涓叉媶鍒嗕負鏍圭洰褰曞拰瀛愮洰褰曚袱閮ㄥ垎鐨勭畻娉曠▼搴忥紝鑰冭檻璺緞鏍煎紡鏈夛細C:\aa\bb\cc 錛孿\aa\bb\cc 錛?ftp://aa.bb/cc 涓婅堪璺緞灝嗗垎鍒鎷嗗垎涓猴細C:\鍜宎a\bb\cc 錛孿\aa 鍜?\bb\cc 錛?ftp:// 鍜?aa.bb/cc 鐢╦avascript瀹炵幇濡備笅錛?/p>

var strRoot , strSub
var regPathParse = / ^([^\\^ \/ ]+[\\ \/ ]+|\\\\[^\\]+)(.*)$ /
if ( regPathParse . test ( strFolder ))
{
聽聽 聽
strRoot = RegExp .$ 1
聽聽 聽
strSub = RegExp .$ 2
}
Tags:聽祿姝e垯琛ㄨ揪寮?/a>祿

xzc 2007-03-16 17:08 鍙戣〃璇勮
]]>
[DWR鏂囨。] WEB-INF 鍙傝?/title><link>http://www.tkk7.com/xzclog/archive/2006/11/19/82028.html</link><dc:creator>xzc</dc:creator><author>xzc</author><pubDate>Sun, 19 Nov 2006 05:50:00 GMT</pubDate><guid>http://www.tkk7.com/xzclog/archive/2006/11/19/82028.html</guid><wfw:comment>http://www.tkk7.com/xzclog/comments/82028.html</wfw:comment><comments>http://www.tkk7.com/xzclog/archive/2006/11/19/82028.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.tkk7.com/xzclog/comments/commentRss/82028.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/xzclog/services/trackbacks/82028.html</trackback:ping><description><![CDATA[     鎽樿: 璇戣咃細Flyingis璇戞枃閾炬帴錛歨ttp://www.tkk7.com/flyingis/archive/2006/11/18/81898.html聽聽聽聽聽聽聽聽聽聽聽聽 http://gis.javaeye.com/blog/34853鍘熸枃閾炬帴錛歨ttp://getahead.ltd.uk/dwr/server/servlet緲昏瘧鐩綍錛歨ttp://www.tkk7.com/f...  <a href='http://www.tkk7.com/xzclog/archive/2006/11/19/82028.html'>闃呰鍏ㄦ枃</a><img src ="http://www.tkk7.com/xzclog/aggbug/82028.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/xzclog/" target="_blank">xzc</a> 2006-11-19 13:50 <a href="http://www.tkk7.com/xzclog/archive/2006/11/19/82028.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>dom4j錛圴ersion 1.6.1錛夊揩閫熷叆闂?/title><link>http://www.tkk7.com/xzclog/archive/2006/11/17/81769.html</link><dc:creator>xzc</dc:creator><author>xzc</author><pubDate>Fri, 17 Nov 2006 07:14:00 GMT</pubDate><guid>http://www.tkk7.com/xzclog/archive/2006/11/17/81769.html</guid><wfw:comment>http://www.tkk7.com/xzclog/comments/81769.html</wfw:comment><comments>http://www.tkk7.com/xzclog/archive/2006/11/17/81769.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.tkk7.com/xzclog/comments/commentRss/81769.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/xzclog/services/trackbacks/81769.html</trackback:ping><description><![CDATA[ <p>Parsing XML</p> <p>鎴栬浣犳兂瑕佸仛鐨勭涓浠朵簨鎯呭氨鏄В鏋愪竴涓煇縐嶇被鍨嬬殑XML鏂囨。錛岀敤dom4j寰堝鏄撳仛鍒般傝鐪嬩笅闈㈢殑紺鴻寖浠g爜錛?/p> <p>import java.net.URL;</p> <p>import org.dom4j.Document;<br />import org.dom4j.DocumentException;<br />import org.dom4j.io.SAXReader;</p> <p>public class Foo {</p> <p>public Document parse(URL url) throws DocumentException {<br />SAXReader reader = new SAXReader();<br />Document document = reader.read(url);<br />return document;<br />}<br />}</p> <div class="xltbdxt" id="a000315more"> <div class="x9dnxtd" id="more"> <p>浣跨敤榪唬鍣紙Iterators錛?/p> <p>鎴戜滑鍙互閫氳繃澶氱鏂規硶鏉ユ搷浣淴ML鏂囨。錛岃繖浜涙柟娉曡繑鍥瀓ava閲屾爣鍑嗙殑榪唬鍣紙Iterators錛夈備緥濡傦細</p> <p>public void bar(Document document) throws DocumentException {<br />Element root = document.getRootElement();<br />//榪唬鏍瑰厓绱犱笅闈㈢殑鎵鏈夊瓙鍏冪礌<br />for ( Iterator i = root.elementIterator(); i.hasNext(); ) {<br />Element element = (Element) i.next();<br />//澶勭悊浠g爜<br />}</p> <p>//榪唬鏍瑰厓绱犱笅闈㈠悕縐頒負"foo"鐨勫瓙鍏冪礌<br />for ( Iterator i = root.elementIterator( "foo" ); i.hasNext(); ) {<br />Element foo = (Element) i.next();<br />//澶勭悊浠g爜<br />}</p> <p>// 榪唬鏍瑰厓绱犵殑灞炴ttributes錛夊厓绱?br />for ( Iterator i = root.attributeIterator(); i.hasNext(); ) {<br />Attribute attribute = (Attribute) i.next();<br />// do something<br />}<br />}</p> <p>寮哄ぇ鐨刋Path瀵艱埅</p> <p>鍦╠om4j涓璛Path鍙互琛ㄧず鍑哄湪XML鏍戠姸緇撴瀯涓殑Document鎴栬呬換鎰忕殑鑺傜偣錛圢ode錛夛紙渚嬪錛欰ttribute錛孍lement 鎴栬?ProcessingInstruction絳夛級銆傚畠鍙互浣垮湪鏂囨。涓鏉傜殑鎿嶄綔浠呴氳繃涓琛屼唬鐮佸氨鍙互瀹屾垚銆備緥濡傦細</p> <p>public void bar(Document document) {<br />List list = document.selectNodes( "http://foo/bar" );</p> <p>Node node = document.selectSingleNode( "http://foo/bar/author" );</p> <p>String name = node.valueOf( "@name" );<br />}</p> <p>濡傛灉浣犳兂寰楀埌涓涓猉HTML鏂囨。涓殑鎵鏈夎秴鏂囨湰閾炬帴錛坔ypertext links錛変綘鍙互浣跨敤涓嬮潰鐨勪唬鐮侊細</p> <p>public void findLinks(Document document) throws DocumentException {</p> <p>List list = document.selectNodes( "http://a/@href" );</p> <p>for (Iterator iter = list.iterator(); iter.hasNext(); ) {<br />Attribute attribute = (Attribute) iter.next();<br />String url = attribute.getValue();<br />}<br />}</p> <p>濡傛灉浣犻渶瑕佸叧浜嶺Path璇█鐨勪換浣曞府鍔╋紝鎴戜滑寮虹儓鎺ㄨ崘榪欎釜绔欑偣Zvon tutorial浠栦細閫氳繃涓涓竴涓殑渚嬪瓙寮曞浣犲涔犮?/p> <p>蹇熼亶鍘嗭紙Fast Looping錛?/p> <p> <br />濡傛灉浣犱笉寰椾笉閬嶅巻涓涓潪甯稿ぇ鐨刋ML鏂囨。錛岀劧鍚庢墠鍘繪墽琛岋紝鎴戜滑寤鴻浣犱嬌鐢ㄥ揩閫熼亶鍘嗘柟娉曪紙fast looping method錛夛紝瀹冨彲浠ラ伩鍏嶄負姣忎竴涓驚鐜殑鑺傜偣鍒涘緩涓涓凱浠e櫒瀵硅薄,濡備笅鎵紺猴細</p> <p>public void treeWalk(Document document) {<br />treeWalk( document.getRootElement() );<br />}</p> <p>public void treeWalk(Element element) {<br />for ( int i = 0, size = element.nodeCount(); i < size; i++ ) {<br />Node node = element.node(i);<br />if ( node instanceof Element ) {<br />treeWalk( (Element) node );<br />}<br />else {<br />// do something....<br />}<br />}<br />}</p> <p>鐢熸垚涓涓柊鐨刋ML鏂囨。瀵硅薄</p> <p>鍦╠om4j涓綘鍙兘甯稿父甯屾湜鐢ㄧ▼搴忕敓鎴愪竴涓猉ML鏂囨。瀵硅薄錛屼笅闈㈢殑紼嬪簭涓轟綘榪涜浜嗙ず鑼冿細</p> <p>import org.dom4j.Document;<br />import org.dom4j.DocumentHelper;<br />import org.dom4j.Element;</p> <p>public class Foo {</p> <p>public Document createDocument() {<br />Document document = DocumentHelper.createDocument();<br />Element root = document.addElement( "root" );</p> <p>Element author1 = root.addElement( "author" )<br />.addAttribute( "name", "James" )<br />.addAttribute( "location", "UK" )<br />.addText( "James Strachan" );<br /><br />Element author2 = root.addElement( "author" )<br />.addAttribute( "name", "Bob" )<br />.addAttribute( "location", "US" )<br />.addText( "Bob McWhirter" );</p> <p>return document;<br />}<br />}</p> <p>灝嗕竴涓枃妗e璞″啓鍏ユ枃浠朵腑</p> <p>灝嗕竴涓枃妗e璞″啓鍏riter瀵硅薄鐨勪竴涓畝鍗曞揩閫熺殑閫斿緞鏄氳繃write()鏂規硶銆?/p> <p>FileWriter out = new FileWriter( "foo.xml" );<br />document.write( out );</p> <p>濡傛灉浣犳兂鏀瑰彉杈撳嚭鏂囦歡鐨勬帓鐗堟牸寮忥紝姣斿浣犳兂瑕佷竴涓紓浜殑鏍煎紡鎴栬呮槸涓涓揣鍑戠殑鏍煎紡錛屾垨鑰呬綘鎯崇敤Writer 瀵硅薄鎴栬匫utputStream 瀵硅薄鏉ユ搷浣滐紝閭d箞浣犲彲浠ヤ嬌鐢╔MLWriter 綾匯?/p> <p>import org.dom4j.Document;<br />import org.dom4j.io.OutputFormat;<br />import org.dom4j.io.XMLWriter;</p> <p>public class Foo {</p> <p>public void write(Document document) throws IOException {</p> <p>// 鍐欏叆鏂囦歡<br />XMLWriter writer = new XMLWriter(<br />new FileWriter( "output.xml" )<br />);<br />writer.write( document );<br />writer.close();</p> <p> <br />// 浠ヤ竴縐嶄紭闆呯殑鏍煎紡鍐欏叆System.out瀵硅薄<br />OutputFormat format = OutputFormat.createPrettyPrint();<br />writer = new XMLWriter( System.out, format );<br />writer.write( document );</p> <p>// 浠ヤ竴縐嶇揣鍑戠殑鏍煎紡鍐欏叆System.out瀵硅薄<br />format = OutputFormat.createCompactFormat();<br />writer = new XMLWriter( System.out, format );<br />writer.write( document );<br />}<br />}</p> <p>杞寲涓哄瓧絎︿覆錛屾垨鑰呬粠瀛楃涓茶漿鍖?/p> <p>濡傛灉浣犳湁涓涓枃妗o紙Document錛夊璞℃垨鑰呬換浣曚竴涓妭鐐癸紙Node錛夊璞$殑寮曠敤錛坮eference錛夛紝璞″睘鎬э紙Attribute錛夋垨鑰呭厓绱狅紙Element錛夛紝浣犲彲浠ラ氳繃asXML()鏂規硶鎶婂畠杞寲涓轟竴涓粯璁ょ殑XML瀛楃涓詫細</p> <p>Document document = ...;<br />String text = document.asXML();</p> <p>濡傛灉浣犳湁涓浜沊ML鍐呭鐨勫瓧絎︿覆琛ㄧず錛屼綘鍙互閫氳繃DocumentHelper.parseText()鏂規硶灝嗗畠閲嶆柊杞寲涓烘枃妗o紙Document錛夊璞★細</p> <p>String text = "<person><name>James</name></person>";<br />Document document = DocumentHelper.parseText(text);</p> <p>閫氳繃XSLT鏍峰紡鍖栨枃妗o紙Document錛?/p> <p> <br />浣跨敤Sun鍏徃鎻愪緵鐨凧AXP API灝哫SLT 搴旂敤鍒版枃妗o紙Document錛変笂鏄緢綆鍗曠殑銆傚畠鍏佽浣犱嬌鐢ㄤ換浣曠殑XSLT寮曟搸錛堜緥濡傦細Xalan鎴朣AXON絳夛級鏉ュ紑鍙戙備笅闈㈡槸涓涓嬌鐢↗AXP鍒涘緩涓涓漿鍖栧櫒錛坱ransformer錛夛紝鐒跺悗灝嗗畠搴旂敤鍒版枃妗o紙Document錛変笂鐨勪緥瀛愶細</p> <p>import javax.xml.transform.Transformer;<br />import javax.xml.transform.TransformerFactory;</p> <p>import org.dom4j.Document;<br />import org.dom4j.io.DocumentResult;<br />import org.dom4j.io.DocumentSource;</p> <p>public class Foo {</p> <p>public Document styleDocument(<br />Document document, <br />String stylesheet<br />) throws Exception {</p> <p>// 浣跨敤 JAXP 鍔犺澆杞寲鍣?br />TransformerFactory factory = TransformerFactory.newInstance();<br />Transformer transformer = factory.newTransformer( <br />new StreamSource( stylesheet ) <br />);</p> <p>// 鐜板湪鏉ユ牱寮忓寲涓涓枃妗o紙Document錛?br />DocumentSource source = new DocumentSource( document );<br />DocumentResult result = new DocumentResult();<br />transformer.transform( source, result );</p> <p>// 榪斿洖緇忚繃鏍峰紡鍖栫殑鏂囨。錛圖ocument錛?br />Document transformedDoc = result.getDocument();<br />return transformedDoc;<br />}<br />}</p> <p> <a >鍘熸枃鍦板潃</a> <br /> <a >dom4j涓嬭澆鍦板潃</a> </p> <p>鍒濇灝濊瘯緲昏瘧錛屽鏋滄湁緲昏瘧涓嶅Ε鐨勫湴鏂癸紝甯屾湜澶у鎸囧嚭鏉ワ紝鎴戜滑鍏卞悓榪涙錛?br />璋㈣阿錛侊紒<br />[:)] </p> </div> </div> <img src ="http://www.tkk7.com/xzclog/aggbug/81769.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/xzclog/" target="_blank">xzc</a> 2006-11-17 15:14 <a href="http://www.tkk7.com/xzclog/archive/2006/11/17/81769.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>java涓洓縐嶆搷浣渪ml鏂瑰紡鐨勬瘮杈?/title><link>http://www.tkk7.com/xzclog/archive/2006/11/17/81766.html</link><dc:creator>xzc</dc:creator><author>xzc</author><pubDate>Fri, 17 Nov 2006 07:01:00 GMT</pubDate><guid>http://www.tkk7.com/xzclog/archive/2006/11/17/81766.html</guid><wfw:comment>http://www.tkk7.com/xzclog/comments/81766.html</wfw:comment><comments>http://www.tkk7.com/xzclog/archive/2006/11/17/81766.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.tkk7.com/xzclog/comments/commentRss/81766.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/xzclog/services/trackbacks/81766.html</trackback:ping><description><![CDATA[ <p>1. 浠嬬粛</p> <p>1錛塂OM(JAXP Crimson瑙f瀽鍣? <br />        DOM鏄敤涓庡鉤鍙板拰璇█鏃犲叧鐨勬柟寮忚〃紺篨ML鏂囨。鐨勫畼鏂筗3C鏍囧噯銆侱OM鏄互灞傛緇撴瀯緇勭粐鐨勮妭鐐規垨淇℃伅鐗囨柇鐨勯泦鍚堛傝繖涓眰嬈$粨鏋勫厑璁稿紑鍙戜漢鍛樺湪鏍戜腑瀵繪壘鐗瑰畾淇℃伅銆傚垎鏋愯緇撴瀯閫氬父闇瑕佸姞杞芥暣涓枃妗e拰鏋勯犲眰嬈$粨鏋勶紝鐒跺悗鎵嶈兘鍋氫換浣曞伐浣溿傜敱浜庡畠鏄熀浜庝俊鎭眰嬈$殑錛屽洜鑰孌OM琚涓烘槸鍩轟簬鏍戞垨鍩轟簬瀵硅薄鐨勩侱OM浠ュ強騫夸箟鐨勫熀浜庢爲鐨勫鐞嗗叿鏈夊嚑涓紭鐐廣傞鍏堬紝鐢變簬鏍戝湪鍐呭瓨涓槸鎸佷箙鐨勶紝鍥犳鍙互淇敼瀹冧互渚垮簲鐢ㄧ▼搴忚兘瀵規暟鎹拰緇撴瀯浣滃嚭鏇存敼銆傚畠榪樺彲浠ュ湪浠諱綍鏃跺欏湪鏍戜腑涓婁笅瀵艱埅錛岃屼笉鏄儚SAX閭f牱鏄竴嬈℃х殑澶勭悊銆侱OM浣跨敤璧鋒潵涔熻綆鍗曞緱澶氥?/p> <p>2錛塖AX</p> <p>        SAX澶勭悊鐨勪紭鐐歸潪甯哥被浼間簬嫻佸獟浣撶殑浼樼偣銆傚垎鏋愯兘澶熺珛鍗沖紑濮嬶紝鑰屼笉鏄瓑寰呮墍鏈夌殑鏁版嵁琚鐞嗐傝屼笖錛岀敱浜庡簲鐢ㄧ▼搴忓彧鏄湪璇誨彇鏁版嵁鏃舵鏌ユ暟鎹紝鍥犳涓嶉渶瑕佸皢鏁版嵁瀛樺偍鍦ㄥ唴瀛樹腑銆傝繖瀵逛簬澶у瀷鏂囨。鏉ヨ鏄釜宸ㄥぇ鐨勪紭鐐廣備簨瀹炰笂錛屽簲鐢ㄧ▼搴忕敋鑷充笉蹇呰В鏋愭暣涓枃妗o紱瀹冨彲浠ュ湪鏌愪釜鏉′歡寰楀埌婊¤凍鏃跺仠姝㈣В鏋愩備竴鑸潵璇達紝SAX榪樻瘮瀹冪殑鏇夸唬鑰匘OM蹇澶氥?<br /> 銆銆閫夋嫨DOM榪樻槸閫夋嫨SAX錛?瀵逛簬闇瑕佽嚜宸辯紪鍐欎唬鐮佹潵澶勭悊XML鏂囨。鐨勫紑鍙戜漢鍛樻潵璇達紝  閫夋嫨DOM榪樻槸SAX瑙f瀽妯″瀷鏄竴涓潪甯擱噸瑕佺殑璁捐鍐崇瓥銆?DOM閲囩敤寤虹珛鏍戝艦緇撴瀯鐨勬柟寮忚闂甔ML鏂囨。錛岃孲AX閲囩敤鐨勪簨浠舵ā鍨嬨?<br /><br />銆銆DOM瑙f瀽鍣ㄦ妸XML鏂囨。杞寲涓轟竴涓寘鍚叾鍐呭鐨勬爲錛屽茍鍙互瀵規爲榪涜閬嶅巻銆傜敤DOM瑙f瀽妯″瀷鐨勪紭鐐規槸緙栫▼瀹規槗錛屽紑鍙戜漢鍛樺彧闇瑕佽皟鐢ㄥ緩鏍戠殑鎸囦護錛岀劧鍚庡埄鐢╪avigation APIs璁塊棶鎵闇鐨勬爲鑺傜偣鏉ュ畬鎴愪換鍔°傚彲浠ュ緢瀹規槗鐨勬坊鍔犲拰淇敼鏍戜腑鐨勫厓绱犮傜劧鑰岀敱浜庝嬌鐢―OM瑙f瀽鍣ㄧ殑鏃跺欓渶瑕佸鐞嗘暣涓猉ML鏂囨。錛屾墍浠ュ鎬ц兘鍜屽唴瀛樼殑瑕佹眰姣旇緝楂橈紝灝ゅ叾鏄亣鍒板緢澶х殑XML鏂囦歡鐨勬椂鍊欍傜敱浜庡畠鐨勯亶鍘嗚兘鍔涳紝DOM瑙f瀽鍣ㄥ父鐢ㄤ簬XML鏂囨。闇瑕侀綣佺殑鏀瑰彉鐨勬湇鍔′腑銆?<br /><br />銆銆SAX瑙f瀽鍣ㄩ噰鐢ㄤ簡鍩轟簬浜嬩歡鐨勬ā鍨嬶紝瀹冨湪瑙f瀽XML鏂囨。鐨勬椂鍊欏彲浠ヨЕ鍙戜竴緋誨垪鐨勪簨浠訛紝褰撳彂鐜扮粰瀹氱殑tag鐨勬椂鍊欙紝瀹冨彲浠ユ縺媧諱竴涓洖璋冩柟娉曪紝鍛婅瘔璇ユ柟娉曞埗瀹氱殑鏍囩宸茬粡鎵懼埌銆係AX瀵瑰唴瀛樼殑瑕佹眰閫氬父浼氭瘮杈冧綆錛屽洜涓哄畠璁╁紑鍙戜漢鍛樿嚜宸辨潵鍐沖畾鎵瑕佸鐞嗙殑tag銆傜壒鍒槸褰撳紑鍙戜漢鍛樺彧闇瑕佸鐞嗘枃妗d腑鎵鍖呭惈鐨勯儴鍒嗘暟鎹椂錛孲AX榪欑鎵╁睍鑳藉姏寰楀埌浜嗘洿濂界殑浣撶幇銆備絾鐢⊿AX瑙f瀽鍣ㄧ殑鏃跺欑紪鐮佸伐浣滀細姣旇緝鍥伴毦錛岃屼笖寰堥毦鍚屾椂璁塊棶鍚屼竴涓枃妗d腑鐨勫澶勪笉鍚屾暟鎹?</p> <p>3錛塉DOM           <a >http://www.jdom.org</a></p> <p>          JDOM鐨勭洰鐨勬槸鎴愪負Java鐗瑰畾鏂囨。妯″瀷錛屽畠綆鍖栦笌XML鐨勪氦浜掑茍涓旀瘮浣跨敤DOM瀹炵幇鏇村揩銆傜敱浜庢槸絎竴涓狫ava鐗瑰畾妯″瀷錛孞DOM涓鐩村緱鍒板ぇ鍔?a class="Channel_KeyLink" >鎺ㄥ箍</a>鍜屼績榪涖傛鍦ㄨ冭檻閫氳繃“Java瑙勮寖璇鋒眰JSR-102”灝嗗畠鏈緇堢敤浣?#8220;Java鏍囧噯鎵╁睍”銆備粠2000騫村垵灝卞凡緇忓紑濮嬩簡JDOM寮鍙戙?</p> <p>銆銆JDOM涓嶥OM涓昏鏈変袱鏂歸潰涓嶅悓銆傞鍏堬紝JDOM浠呬嬌鐢ㄥ叿浣撶被鑰屼笉浣跨敤鎺ュ彛銆傝繖鍦ㄦ煇浜涙柟闈㈢畝鍖栦簡API錛屼絾鏄篃闄愬埗浜嗙伒媧繪с傜浜岋紝API澶ч噺浣跨敤浜咰ollections綾伙紝綆鍖栦簡閭d簺宸茬粡鐔熸倝榪欎簺綾葷殑Java寮鍙戣呯殑浣跨敤銆?</p> <p>銆銆JDOM鏂囨。澹版槑鍏剁洰鐨勬槸“浣跨敤20%(鎴栨洿灝?鐨勭簿鍔涜В鍐?0%(鎴栨洿澶?Java/XML闂”(鏍規嵁瀛︿範鏇茬嚎鍋囧畾涓?0%)銆侸DOM瀵逛簬澶у鏁癑ava/XML搴旂敤紼嬪簭鏉ヨ褰撶劧鏄湁鐢ㄧ殑錛屽茍涓斿ぇ澶氭暟寮鍙戣呭彂鐜癆PI姣擠OM瀹規槗鐞嗚В寰楀銆侸DOM榪樺寘鎷紼嬪簭琛屼負鐨勭浉褰撳箍娉涙鏌ヤ互闃叉鐢ㄦ埛鍋氫換浣曞湪XML涓棤鎰忎箟鐨勪簨銆傜劧鑰岋紝瀹冧粛闇瑕佹偍鍏呭垎鐞嗚ВXML浠ヤ究鍋氫竴浜涜秴鍑哄熀鏈殑宸ヤ綔(鎴栬呯敋鑷崇悊瑙f煇浜涙儏鍐典笅鐨勯敊璇?銆傝繖涔熻鏄瘮瀛︿範DOM鎴朖DOM鎺ュ彛閮芥洿鏈夋剰涔夌殑宸ヤ綔銆?</p> <p>銆銆JDOM鑷韓涓嶅寘鍚В鏋愬櫒銆傚畠閫氬父浣跨敤SAX2瑙f瀽鍣ㄦ潵瑙f瀽鍜岄獙璇佽緭鍏ML鏂囨。(灝界瀹冭繕鍙互灝嗕互鍓嶆瀯閫犵殑DOM琛ㄧず浣滀負杈撳叆)銆傚畠鍖呭惈涓浜涜漿鎹㈠櫒浠ュ皢JDOM琛ㄧず杈撳嚭鎴怱AX2浜嬩歡嫻併丏OM妯″瀷鎴朮ML鏂囨湰鏂囨。銆侸DOM鏄湪Apache璁稿彲璇佸彉浣撲笅鍙戝竷鐨勫紑鏀?a class="Channel_KeyLink" >婧愮爜</a>銆?/p> <p>4錛塂OM4J <a >http://dom4j.sourceforge.<a class="Channel_KeyLink" >net</a></a> <br />             <br />        铏界劧DOM4J浠h〃浜嗗畬鍏ㄧ嫭绔嬬殑寮鍙戠粨鏋滐紝浣嗘渶鍒濓紝瀹冩槸JDOM鐨勪竴縐嶆櫤鑳藉垎鏀傚畠鍚堝茍浜嗚澶氳秴鍑哄熀鏈琗ML鏂囨。琛ㄧず鐨勫姛鑳斤紝鍖呮嫭闆嗘垚鐨刋Path鏀寔銆乆ML Schema鏀寔浠ュ強鐢ㄤ簬澶ф枃妗f垨嫻佸寲鏂囨。鐨勫熀浜庝簨浠剁殑澶勭悊銆傚畠榪樻彁渚涗簡鏋勫緩鏂囨。琛ㄧず鐨勯夐」錛屽畠閫氳繃DOM4J API鍜屾爣鍑咲OM鎺ュ彛鍏鋒湁騫惰璁塊棶鍔熻兘銆備粠2000涓嬪崐騫村紑濮嬶紝瀹冨氨涓鐩村浜庡紑鍙戜箣涓?</p> <p>銆銆涓烘敮鎸佹墍鏈夎繖浜涘姛鑳斤紝DOM4J浣跨敤鎺ュ彛鍜屾娊璞″熀鏈被鏂規硶銆侱OM4J澶ч噺浣跨敤浜咥PI涓殑Collections綾伙紝浣嗘槸鍦ㄨ澶氭儏鍐典笅錛屽畠榪樻彁渚涗竴浜涙浛浠f柟娉曚互鍏佽鏇村ソ鐨勬ц兘鎴栨洿鐩存帴鐨勭紪鐮佹柟娉曘傜洿鎺ュソ澶勬槸錛岃櫧鐒禗OM4J浠樺嚭浜嗘洿澶嶆潅鐨凙PI鐨勪唬浠鳳紝浣嗘槸瀹冩彁渚涗簡姣擩DOM澶у緱澶氱殑鐏墊椿鎬с?</p> <p>銆銆鍦ㄦ坊鍔犵伒媧繪с乆Path闆嗘垚鍜屽澶ф枃妗e鐞嗙殑鐩爣鏃訛紝DOM4J鐨勭洰鏍囦笌JDOM鏄竴鏍風殑錛氶拡瀵笿ava寮鍙戣呯殑鏄撶敤鎬у拰鐩磋鎿嶄綔銆傚畠榪樿嚧鍔涗簬鎴愪負姣擩DOM鏇村畬鏁寸殑瑙e喅鏂規錛屽疄鐜板湪鏈川涓婂鐞嗘墍鏈塉ava/XML闂鐨勭洰鏍囥傚湪瀹屾垚璇ョ洰鏍囨椂錛屽畠姣擩DOM鏇村皯寮鴻皟闃叉涓嶆紜殑搴旂敤紼嬪簭琛屼負銆?</p> <p>銆銆DOM4J鏄竴涓潪甯擱潪甯鎬紭縐鐨凧ava XML API錛屽叿鏈夋ц兘浼樺紓銆佸姛鑳藉己澶у拰鏋佺鏄撶敤浣跨敤鐨勭壒鐐癸紝鍚屾椂瀹冧篃鏄竴涓紑鏀炬簮浠g爜鐨?a class="Channel_KeyLink" >杞歡</a>銆傚浠婁綘鍙互鐪嬪埌瓚婃潵瓚婂鐨凧ava<a class="Channel_KeyLink" >杞歡</a>閮藉湪浣跨敤DOM4J鏉ヨ鍐橷ML錛岀壒鍒煎緱涓鎻愮殑鏄繛Sun鐨凧AXM涔熷湪鐢―OM4J銆?<br /></p> <p>2.. 姣旇緝</p> <p>1錛塂OM4J鎬ц兘鏈濂斤紝榪濻un鐨凧AXM涔熷湪鐢―OM4J銆傜洰鍓嶈澶氬紑婧愰」鐩腑澶ч噺閲囩敤DOM4J錛屼緥濡傚ぇ鍚嶉紟榧庣殑Hibernate涔熺敤DOM4J鏉ヨ鍙朮ML閰嶇疆鏂囦歡銆傚鏋滀笉鑰冭檻鍙Щ妞嶆э紝閭e氨閲囩敤DOM4J.</p> <p>2錛塉DOM鍜孌OM鍦ㄦц兘嫻嬭瘯鏃惰〃鐜頒笉浣籌紝鍦ㄦ祴璇?0M鏂囨。鏃跺唴瀛樻孩鍑恒傚湪灝忔枃妗f儏鍐典笅榪樺煎緱鑰冭檻浣跨敤DOM鍜孞DOM銆傝櫧鐒禞DOM鐨勫紑鍙戣呭凡緇忚鏄庝粬浠湡鏈涘湪姝e紡鍙戣鐗堝墠涓撴敞鎬ц兘闂錛屼絾鏄粠鎬ц兘瑙傜偣鏉ョ湅錛屽畠紜疄娌℃湁鍊煎緱鎺ㄨ崘涔嬪銆傚彟澶栵紝DOM浠嶆槸涓涓潪甯稿ソ鐨勯夋嫨銆侱OM瀹炵幇騫挎硾搴旂敤浜庡縐嶇紪紼嬭璦銆傚畠榪樻槸璁稿鍏跺畠涓嶺ML鐩稿叧鐨勬爣鍑嗙殑鍩虹錛屽洜涓哄畠姝e紡鑾峰緱W3C鎺ㄨ崘(涓庡熀浜庨潪鏍囧噯鐨凧ava妯″瀷鐩稿)錛屾墍浠ュ湪鏌愪簺綾誨瀷鐨勯」鐩腑鍙兘涔熼渶瑕佸畠(濡傚湪JavaScript涓嬌鐢―OM)銆?/p> <p>3錛塖AX琛ㄧ幇杈冨ソ錛岃繖瑕佷緷璧栦簬瀹冪壒瀹氱殑瑙f瀽鏂瑰紡錛嶄簨浠墮┍鍔ㄣ備竴涓猄AX媯嫻嬪嵆灝嗗埌鏉ョ殑XML嫻侊紝浣嗗茍娌℃湁杞藉叆鍒板唴瀛?褰撶劧褰揦ML嫻佽璇誨叆鏃訛紝浼氭湁閮ㄥ垎鏂囨。鏆傛椂闅愯棌鍦ㄥ唴瀛樹腑)銆?/p> <p>3. 鍥涚xml鎿嶄綔鏂瑰紡鐨勫熀鏈嬌鐢ㄦ柟娉?/p> <p>xml鏂囦歡錛?/p> <p>錛?xml version="1.0" encoding="GB2312"?錛?br />錛淩ESULT錛?br />    錛淰ALUE錛?<br />銆銆      錛淣O錛濧1234錛?NO錛?<br />銆銆     錛淎DDR錛炲洓宸濈渷XX鍘縓X闀嘪X璺疿孌礨X鍙鳳紲/ADDR錛?br />    錛?VALUE錛?br />    錛淰ALUE錛?<br />銆銆      錛淣O錛濨1234錛?NO錛?<br />銆     銆錛淎DDR錛炲洓宸濈渷XX甯俋X涔X鏉慩X緇勶紲/ADDR錛?br />    錛?VALUE錛?br />錛?RESULT錛?</p> <p>1錛塂OM</p> <p>import java.io.*;<br />import java.util.*;<br />import org.w3c.dom.*;<br />import javax.xml.parsers.*; </p> <p>public class MyXMLReader{ <br />銆public static void main(String arge[]){ </p> <p>銆銆long lasting =System.currentTimeMillis(); <br />銆銆try{  <br />銆銆銆File f=new File("data_10k.xml"); <br />銆銆銆DocumentBuilderFactory factory=DocumentBuilderFactory.newInstance(); <br />銆銆銆DocumentBuilder builder=factory.newDocumentBuilder(); <br />銆銆銆Document doc = builder.parse(f); <br />銆銆銆NodeList nl = doc.getElementsByTagName("VALUE"); <br />銆銆銆for (int i=0;i錛渘l.getLength();i++){ <br />銆銆銆銆System.out.print("杞︾墝鍙風爜:" + doc.getElementsByTagName("NO").item(i).getFirstChild().getNodeValue()); <br />銆銆銆銆System.out.println("杞︿富鍦板潃:" + doc.getElementsByTagName("ADDR").item(i).getFirstChild().getNodeValue()); <br />銆 銆} <br />銆銆}catch(Exception e){ <br />銆銆銆e.printStackTrace(); <br />} </p> <p>2錛塖AX</p> <p>import org.xml.sax.*;<br />import org.xml.sax.helpers.*;<br />import javax.xml.parsers.*; </p> <p>public class MyXMLReader extends DefaultHandler { </p> <p>銆java.util.Stack tags = new java.util.Stack(); <br />銆public MyXMLReader() { <br />銆銆super();<br />   } </p> <p>銆public static void main(String args[]) { <br />銆銆long lasting = System.currentTimeMillis(); <br />銆銆try { <br />銆銆銆SAXParserFactory sf = SAXParserFactory.newInstance(); <br />銆銆銆SAXParser sp = sf.newSAXParser(); <br />銆銆銆MyXMLReader reader = new MyXMLReader(); <br />銆銆銆sp.parse(new InputSource("data_10k.xml"), reader); <br />銆銆} catch (Exception e) { <br />銆銆銆e.printStackTrace(); <br />銆銆} </p> <p>銆銆System.out.println("榪愯鏃墮棿錛? + (System.currentTimeMillis() - lasting) + "姣");} <br />銆銆public void characters(char ch[], int start, int length) throws SAXException { <br />銆銆String tag = (String) tags.peek(); <br />銆銆if (tag.equals("NO")) {  <br />銆銆銆System.out.print("杞︾墝鍙風爜錛? + new String(ch, start, length));<br />    }<br />    if (tag.equals("ADDR")) { <br />銆銆System.out.println("鍦板潃:" + new String(ch, start, length));<br />    }<br />   } </p> <p>銆銆public void startElement(String uri,String localName,String qName,Attributes attrs) { <br />銆銆tags.push(qName);}<br />}  </p> <p>3錛?JDOM</p> <p>import java.io.*;<br />import java.util.*;<br />import org.jdom.*;<br />import org.jdom.input.*; </p> <p>public class MyXMLReader { </p> <p>銆public static void main(String arge[]) { <br />銆銆long lasting = System.currentTimeMillis(); <br />銆銆try { <br />銆銆銆SAXBuilder builder = new SAXBuilder();  <br />銆銆銆Document doc = builder.build(new File("data_10k.xml"));  <br />銆銆銆Element foo = doc.getRootElement();  <br />銆銆銆List allChildren = foo.getChildren();  <br />銆銆銆for(int i=0;i錛渁llChildren.size();i++) {  <br />銆銆銆銆System.out.print("杞︾墝鍙風爜:" + ((Element)allChildren.get(i)).getChild("NO").getText()); <br />銆銆銆銆System.out.println("杞︿富鍦板潃:" + ((Element)allChildren.get(i)).getChild("ADDR").getText()); <br />銆銆銆} <br />銆銆} catch (Exception e) { <br />銆銆銆e.printStackTrace(); <br />} </p> <p>}</p> <p>4錛塂OM4J</p> <p>import java.io.*;<br />import java.util.*;<br />import org.dom4j.*;<br />import org.dom4j.io.*; </p> <p>public class MyXMLReader { </p> <p>銆public static void main(String arge[]) { <br />銆銆long lasting = System.currentTimeMillis(); <br />銆銆try { <br />銆銆銆File f = new File("data_10k.xml"); <br />銆銆銆SAXReader reader = new SAXReader(); <br />銆銆銆Document doc = reader.read(f); <br />銆銆銆Element root = doc.getRootElement(); <br />銆銆銆Element foo; <br />銆銆銆for (Iterator i = root.elementIterator("VALUE"); i.hasNext();) { <br />銆銆銆銆foo = (Element) i.next(); <br />銆銆銆銆System.out.print("杞︾墝鍙風爜:" + foo.elementText("NO")); <br />銆銆銆銆System.out.println("杞︿富鍦板潃:" + foo.elementText("ADDR")); <br />銆銆銆} <br />銆銆} catch (Exception e) { <br />銆銆銆e.printStackTrace(); <br />    } <br />}<br /><br />杞嚜錛?a >http://blog.dl.net.cn/xd/3/archives/2005/15.html</a></p> <img src ="http://www.tkk7.com/xzclog/aggbug/81766.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/xzclog/" target="_blank">xzc</a> 2006-11-17 15:01 <a href="http://www.tkk7.com/xzclog/archive/2006/11/17/81766.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>DOM鎿嶄綔XML鐨勭ず渚嬩唬鐮?/title><link>http://www.tkk7.com/xzclog/archive/2006/11/16/81496.html</link><dc:creator>xzc</dc:creator><author>xzc</author><pubDate>Thu, 16 Nov 2006 04:28:00 GMT</pubDate><guid>http://www.tkk7.com/xzclog/archive/2006/11/16/81496.html</guid><wfw:comment>http://www.tkk7.com/xzclog/comments/81496.html</wfw:comment><comments>http://www.tkk7.com/xzclog/archive/2006/11/16/81496.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.tkk7.com/xzclog/comments/commentRss/81496.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/xzclog/services/trackbacks/81496.html</trackback:ping><description><![CDATA[ <div id="htnvvb5" class="wz_Bd" id="_DJ_WZ_">銆庢湰鏂囧湴鍧錛?a >http://v2.djasp.net/Static/ie/1147.stm</a> 銆? <p id="DJ_WZ_BODY"></p><p><span id="xh7nfj7" class="souceCode"><strong>1.鏂囨。瀵硅薄妯″瀷錛圖OM錛?br /></strong>DOM鏄疕TML鍜孹ML鏂囨。鐨勭紪紼嬪熀紜錛屽畠瀹氫箟浜嗗鐞嗘墽琛屾枃妗g殑閫斿緞銆?</span></p>緙栫▼鑰呭彲浠ヤ嬌鐢―OM澧炲姞鏂囨。銆佸畾浣嶆枃妗g粨鏋勩佸~鍔犱慨鏀瑰垹闄ゆ枃妗e厓绱犮俉3C鐨勯噸瑕佺洰鏍囨槸鎶婂埄鐢―OM鎻愪緵涓涓嬌鐢ㄤ簬澶氫釜騫沖彴鐨勭紪紼嬫帴鍙c俉3C DOM琚璁℃垚閫傚悎澶氫釜騫沖彴錛屽彲浣跨敤浠繪剰緙栫▼璇█瀹炵幇鐨勬柟娉曘?br /><strong>2.鑺傜偣鎺ュ彛<br /></strong>XML parser鐢ㄦ潵瑁呰澆XML鏂囨。鍒扮紦瀛樹腑錛屾枃妗h杞芥椂錛屽彲浠ヤ嬌鐢―OM榪涜媯绱㈠拰澶勭悊銆侱OM閲囩敤鏍戝艦緇撴瀯琛ㄧず XML鏂囨。錛屾枃妗e厓绱犳槸鏍戠殑鏈楂橀樁灞傦紝璇ュ厓绱犳湁涓涓垨澶氫釜瀛╁瓙鑺傜偣鐢ㄦ潵琛ㄧず鏍戠殑鍒嗘灊銆?br />鑺傜偣鎺ュ彛紼嬪簭閫氬父鐢ㄦ潵璇誨拰鍐橷ML鑺傜偣鏍戜腑鐨勪釜鍒厓绱狅紝鏂囨。鍏冪礌鐨勫瀛愯妭鐐瑰睘鎬у彲浠ョ敤鏉ユ瀯閫犱釜鍒厓绱犺妭鐐廣俋ML parser鐢ㄦ潵璇佹槑Web涓殑DOM鏀寔閬嶅巻鑺傜偣鏍戠殑鎵鏈夊嚱鏁幫紝騫跺彲閫氳繃瀹冧滑璁塊棶鑺傜偣鍜屽強鍏跺睘鎬с佹彃鍏ュ垹闄よ妭鐐廣佽漿鎹㈣妭鐐規爲鍒癤ML涓?br />鎵鏈塎icrosoft XML parser鍑芥暟寰楀埌W3C XML DOM鐨勬寮忔帹鑽愶紝闄や簡load鍜宭oadXML鍑芥暟錛堟寮忕殑DOM涓嶅寘鎷爣鍑嗗嚱鏁發oading XML鏂囨。錛夈傛湁13涓妭鐐圭被鍨嬭Microsoft XML parser鏀寔錛屼笅闈㈠垪鍑哄父鐢ㄨ妭鐐癸細<br /><strong>鑺傜偣綾誨瀷 渚嬪瓙</strong><br />Document type <!DOCTYPE food SYSTEM "food.dtd"> <br />Processing instruction <?xml version="1.0"?> <br />Element <drink type="beer">Carlsberg</drink> <br />Attribute type="beer" <br />Text Carlsberg <br /><strong>3.浣跨敤XML parser<br /></strong>涓轟簡鏇村姞鐔熺粌鐨勫鐞哫ML鏂囨。錛屽繀欏諱嬌鐢╔ML parser銆侻icrosoft XML parser鏄疘IS5.0鎵甯︾殑涓涓狢OM緇勪歡錛屼竴鏃﹀畨瑁呬簡IIS5.0錛宲arser鍙互鍒╃敤HTML鏂囨。鍜孉SP鏂囦歡涓殑鑴氭湰銆?br />Microsoft XMLDOM parser鏀寔浠ヤ笅緙栫▼妯″紡錛?br />----鏀寔 JavaScript, VBScript, Perl, VB, Java, C++ 絳夌瓑 <br />----鏀寔 W3C XML 1.0 鍜?XML DOM <br />----鏀寔 DTD 鍜?validation <br />濡傛灉浣跨敤IE5.0涓殑JavaScript錛屽彲浠ヤ嬌鐢ㄤ笅闈㈢殑XML鏂囨。瀵硅薄錛?br />var xmlDoc = new ActiveXObject("Microsoft.XMLDOM")<br />濡傛灉浣跨敤VBScript錛屽彲浠ヤ嬌鐢ㄤ笅闈㈢殑XML鏂囨。瀵硅薄錛?br />set xmlDoc = CreateObject("Microsoft.XMLDOM")<br />濡傛灉浣跨敤ASP錛屽彲浠ヤ嬌鐢ㄤ笅闈㈢殑XML鏂囨。瀵硅薄錛?br />set xmlDoc = Server.CreateObject("Microsoft.XMLDOM")<br /><strong>4.瑁呰澆涓涓猉ML鏂囦歡鍒皃arser涓?/strong><br />涓嬮潰鐨勪唬鐮佽杞藉瓨鍦ㄧ殑XML鏂囨。榪涘叆XML parser:<br /><script language="JavaScript"><br />var xmlDoc = new ActiveXObject("Microsoft.XMLDOM")<br />xmlDoc.async="false"<br />xmlDoc.load("note.xml")<br />// ....... processing the document goes here<br /></script><br />絎竴琛岃剼鏈鍔犱簡涓涓狹icrosoft XML parser瀹炰緥錛岀涓夎瑁呰澆鍚嶄負鈥漬ote.xml鈥濈殑XML鏂囨。榪涘叆parser涓傜浜岃淇濊瘉鏂囨。瑁呰澆瀹屾垚浠ュ悗parser榪涜涓嬩竴姝ュ伐浣溿?br /><span id="3bj9pdh" class="souceCode"><strong>5. parseError瀵硅薄</strong><br />鎵撳紑XMl鏂囨。鏃訛紝XML Parser浜х敓閿欒浠g爜錛屽茍瀛樺湪parseError瀵硅薄涓紝鍖呮嫭閿欒浠g爜銆侀敊璇枃鏈拰閿欒琛屽彿錛岀瓑淇℃伅銆?br /><strong>6.鏂囦歡閿欒</strong><br />涓嬮潰鐨勪緥瀛愬皢璇曞浘瑁呰澆涓涓笉瀛樺湪鐨勬枃浠訛紝鐒跺悗浜х敓鐩稿簲鐨勯敊璇唬鐮侊細<br />var xmlDoc = new ActiveXObject("Microsoft.XMLDOM")<br />xmlDoc.async="false"<br />xmlDoc.load("ksdjf.xml")<br />document.write("<br>Error Code: ")<br />document.write(xmlDoc.parseError.errorCode)<br />document.write("<br>Error Reason: ")<br />document.write(xmlDoc.parseError.reason)<br />document.write("<br>Error Line: ")<br />document.write(xmlDoc.parseError.line)<br /><strong>7.XML閿欒<br /></strong>涓嬮潰浣跨敤涓嶆紜殑鏍煎紡瑁呰澆XMl鏂囨。錛?br />var xmlDoc = new ActiveXObject("Microsoft.XMLDOM")<br />xmlDoc.async="false"<br />xmlDoc.load("note_error.xml")<br />document.write("<br>Error Code: ")<br />document.write(xmlDoc.parseError.errorCode)<br />document.write("<br>Error Reason: ")<br />document.write(xmlDoc.parseError.reason)<br />document.write("<br>Error Line: ")<br />document.write(xmlDoc.parseError.line)<br /><strong>8. parseError灞炴?br /></strong>灞炴ф弿榪幫細<br />errorCode 榪斿洖闀挎暣鍨嬮敊璇唬鐮?br />reason 榪斿洖瀛楃涓插瀷閿欒鍘熷洜<br />line 榪斿洖闀挎暣鍨嬮敊璇鍙?br />linePos 榪斿洖闀挎暣鍨嬮敊璇鍙蜂綅緗?br />srcText 榪斿洖瀛楃涓插瀷浜х敓閿欒鍘熷洜<br />url 榪斿洖url瑁呰澆鏂囨。鎸囬拡<br />filePos 榪斿洖闀挎暣鍨嬮敊璇枃浠朵綅緗?br /><strong>9.閬嶅巻鑺傜偣鏍?/strong><br />涓縐嶉氱敤鐨勬瀽鍙朮ML鏂囨。鐨勬柟娉曟槸閬嶅巻鑺傜偣鏍戝拰瀹冪殑鍏冪礌鍊箋? <div class="fjzjrlr" id="Ol11l00OO11O0" style="BORDER-RIGHT: blue 3px solid; PADDING-RIGHT: 5px! important; BORDER-TOP: blue 3px solid; DISPLAY: none; PADDING-LEFT: 5px! important; FONT-WEIGHT: bold! important; FONT-SIZE: 14px! important; PADDING-BOTTOM: 5px! important; MARGIN: 5px; BORDER-LEFT: blue 3px solid; WIDTH: 400px; CURSOR: pointer; PADDING-TOP: 5px! important; BORDER-BOTTOM: blue 3px solid; BACKGROUND-COLOR: white! important" onclick="top.location.>鎮ㄦ煡鐪嬬殑鍐呭杞澆鑷?鈽呯偣鍑昏璁♀槄 <span style="COLOR: red! important">www.djasp.Net</span><br />鐐瑰嚮璁捐鏄竴涓笓涓氱殑緗戦〉緙栫▼璧勮绔欑偣錛屾榪庤闂紒<br />銆銆鐩楃敤瀹冧漢緗戠珯涓婄殑鍐呭鍙伙紝鎮ㄦ煡鐪嬬殑绔欑偣鏈粡鐐瑰嚮璁捐璁稿彲錛屽ぇ閲忕洍鐢ㄧ偣鍑昏璁$綉绔欎笂鐨勫唴瀹癸紝錛岃鍏抽棴璇ョ綉绔欑劧鍚庤闂偣鍑昏璁″畼鏂圭綉鍧錛?span style="COLOR: blue">http://www.djasp.net/</span></div>涓嬮潰鏄嬌鐢╒BScript鍐欑殑閬嶅巻鑺傜偣鏍戠殑紼嬪簭浠g爜錛?br />set xmlDoc=CreateObject("Microsoft.XMLDOM")<br />xmlDoc.async="false"<br />xmlDoc.load("note.xml")<br />for each x in xmlDoc.documentElement.childNodes<br />document.write(x.nodename)<br />document.write(": ")<br />document.write(x.text)<br />next</span><br /><span id="hdfdlbv" class="souceCode"><strong>10.涓篨ML鏂囦歡鎻愪緵HTML鏍煎紡<br /></strong>XML鐨勪竴涓紭鐐規槸鎶奌TML鏂囨。鍜屽畠鐨勬暟鎹垎紱誨紑銆傞氳繃浣跨敤嫻忚鍣ㄤ腑鐨刋ML parser錛孒TML欏甸潰鍙互琚瀯閫犳垚闈欐佹枃妗o紝閫氳繃JavaScript鎻愪緵鍔ㄦ佹暟鎹備笅闈㈢殑渚嬪瓙浣跨敤JavaScript璇誨彇XML鏂囨。錛屽啓XML鏁版嵁鎴怘TML鍏冪礌錛?br />var xmlDoc = new ActiveXObject("Microsoft.XMLDOM")<br />xmlDoc.async="false"<br />xmlDoc.load("note.xml")<br />nodes = xmlDoc.documentElement.childNodes<br />to.innerText = nodes.item(0).text<br />from .innerText = nodes.item(1).text<br />header.innerText = nodes.item(2).text<br />body.innerText = nodes.item(3).text<br /><strong>11.閫氳繃鍚嶇О璁塊棶XML鍏冪礌</strong><br />涓嬮潰鐨勪緥瀛愪嬌鐢↗avaScript璇誨彇XML鏂囨。錛屽啓XML鏁版嵁鎴怘TML鍏冪礌錛?br />var xmlDoc = new ActiveXObject("Microsoft.XMLDOM")<br />xmlDoc.async="false"<br />xmlDoc.load("note.xml")<br />document.write(xmlDoc.getElementsByTagName("from").item(0).text)<br /><strong>12.瑁呰澆綰疿ML鏂囨湰榪涘叆parser</strong><br />涓嬮潰鐨勪唬鐮佽杞芥枃鏈瓧絎︿覆榪涘叆XML parser 錛?br /><script language="JavaScript"><br />var text="<note>"<br />text=text+"<to>Tove</to><from>Jani</from>"<br />text=text+"<heading>Reminder</heading>"<br />text=text+"<body>Don't forget me this weekend!</body>"<br />text=text+"</note>"<br />var xmlDoc = new ActiveXObject("Microsoft.XMLDOM")<br />xmlDoc.async="false"<br />xmlDoc.loadXML(text)<br />// ....... processing the document goes here<br /></script><br /><strong>13.瑁呰澆XML榪涘叆Parser <br /></strong><html><br /><body><br /><script language="javascript"><br />var xmlDoc = new ActiveXObject("Microsoft.XMLDOM")<br />xmlDoc.async="false"<br />xmlDoc.load("note.xml")<br />document.write("The first XML element in the file contains: ")<br />document.write(xmlDoc.documentElement.childNodes.item(0).text)<br /></script><br /></body><br /></html><br /><strong>閬嶅巻XML鑺傜偣鏍戯細<br /></strong><html><br /><body><br /><script language="VBScript"><br />txt="<h1>Traversing the node tree</h1>"<br />document.write(txt)<br />set xmlDoc=CreateObject("Microsoft.XMLDOM")<br />xmlDoc.async="false"<br />xmlDoc.load("note.xml")<br />for each x in xmlDoc.documentElement.childNodes<br />document.write("<b>" & x.nodename & "</b>")<br />document.write(": ")<br />document.write(x.text)<br />document.write("<br>")<br />next<br /></script><br /></body><br /></html><br /><strong>瑁呰澆XML 榪涘叆 HTML <br /></strong><html><br /><head><br /><script language="JavaScript"<br />for="window" event="onload"><br />var xmlDoc = new ActiveXObject("Microsoft.XMLDOM")<br />xmlDoc.async="false"<br />xmlDoc.load("note.xml")<br />nodes = xmlDoc.documentElement.childNodes<br />to.innerText = nodes.item(0).text<br />from.innerText = nodes.item(1).text<br />header.innerText = nodes.item(2).text<br />body.innerText = nodes.item(3).text<br /></script><br /><title>HTML using XML data</title><br /></head><br /><body bgcolor="yellow"><br /><h1>Refsnes Data Internal Note</h1><br /><b>To: </b><span id="to"></span><br /><br><br /><b>From: </b><span id="from"></span><br /><hr><br /><b><span id="header"></span></b><br /><hr><br /><span id="body"></span><br /></body><br /></html></span><p></p></div> <img src ="http://www.tkk7.com/xzclog/aggbug/81496.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/xzclog/" target="_blank">xzc</a> 2006-11-16 12:28 <a href="http://www.tkk7.com/xzclog/archive/2006/11/16/81496.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>瀹炰緥瑙f瀽Js+XML鐨勬搷浣滄柟娉?/title><link>http://www.tkk7.com/xzclog/archive/2006/11/16/81495.html</link><dc:creator>xzc</dc:creator><author>xzc</author><pubDate>Thu, 16 Nov 2006 04:25:00 GMT</pubDate><guid>http://www.tkk7.com/xzclog/archive/2006/11/16/81495.html</guid><wfw:comment>http://www.tkk7.com/xzclog/comments/81495.html</wfw:comment><comments>http://www.tkk7.com/xzclog/archive/2006/11/16/81495.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.tkk7.com/xzclog/comments/commentRss/81495.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/xzclog/services/trackbacks/81495.html</trackback:ping><description><![CDATA[ <div id="jh1v1zz" class="wz_Bd" id="_DJ_WZ_">銆庢湰鏂囧湴鍧錛?a >http://v3.djasp.net/Static/vb/1949.stm</a> 銆? <p id="DJ_WZ_BODY"></p><p>鎴戠殑xml鏂囦歡Login.xml濡備笅. <br /><?xml聽version="1.0"聽encoding="utf-8"聽?> <br /><Login> <br />聽聽聽聽<Character> <br />聽聽聽聽聽聽聽聽<C聽Text="鐑"聽Value="0"></C> <br />聽聽聽聽聽聽聽聽<C聽Text="寮辨皵"聽Value="1"></C> <br />聽聽聽聽聽聽聽聽<C聽Text="嬋鎯?聽Value="2"></C> <br />聽聽聽聽聽聽聽聽<C聽Text="鍐烽潤"聽Value="3"></C> <br />聽聽聽聽聽聽聽聽<C聽Text="鍐烽叿"聽Value="4"></C> <br />聽聽聽聽</Character> <br />聽聽聽聽<Weapon> <br />聽聽聽聽聽聽聽聽<W聽Text="鍏夋潫鍓?聽Value="0"></W> <br />聽聽聽聽聽聽聽聽<W聽Text="鍏夋潫閰嶅垁"聽Value="1"></W> <br />聽聽聽聽</Weapon> <br />聽聽聽聽<EconomyProperty> <br />聽聽聽聽聽聽聽聽<P聽Text="騫沖潎鍨?聽Value="0"></P> <br />聽聽聽聽聽聽聽聽<P聽Text="閲嶈鏀誨嚮"聽Value="1"></P> <br />聽聽聽聽聽聽聽聽<P聽Text="閲嶈鏁忔嵎"聽Value="2"></P> <br />聽聽聽聽聽聽聽聽<P聽Text="閲嶈闃插盡"聽Value="3"></P> <br />聽聽聽聽聽聽聽聽<P聽Text="閲嶈鍛戒腑"聽Value="4"></P> <br />聽聽聽聽</EconomyProperty> <br /></Login> <br />鐜板湪鎴戦渶瑕佸榪欎釜xml鏂囦歡鐨勫唴瀹硅繘琛屾搷浣? <br />棣栧厛,鎴戜滑闇瑕佸姞杞借繖涓獂ml鏂囦歡,js涓姞杞絰ml鏂囦歡,鏄氳繃XMLDOM鏉ヨ繘琛岀殑. <br />//聽鍔犺澆xml鏂囨。 <br />loadXML聽聽聽聽=聽function(xmlFile) <br />{ <br />聽聽聽聽var聽xmlDoc; <br />聽聽聽聽if(window.ActiveXObject) <br />聽聽聽聽{ <br />聽聽聽聽聽聽聽聽xmlDoc聽聽聽聽=聽new聽ActiveXObject(鈥橫icrosoft.XMLDOM鈥?; <br />聽聽聽聽聽聽聽聽xmlDoc.async聽聽聽聽=聽false; <br />聽聽聽聽聽聽聽聽xmlDoc.load(xmlFile); <br />聽聽聽聽} <br />聽聽聽聽else聽if聽(document.implementation&&document.implementation.createDocument) <br />聽聽聽聽{ <br />聽聽聽聽聽聽聽聽xmlDoc聽聽聽聽=聽document.implementation.createDocument(鈥欌?聽鈥欌?聽null); <br />聽聽聽聽聽聽聽聽xmlDoc.load(xmlFile); <br />聽聽聽聽} <br />聽聽聽聽else <br />聽聽聽聽{ <br />聽聽聽聽聽聽聽聽return聽null; <br />聽聽聽聽} <br />聽聽聽聽 <br />聽聽聽聽return聽xmlDoc; <br />} <br />xml鏂囦歡瀵硅薄鍑烘潵浜?聽鎺ヤ笅鍘繪垜灝辮瀵硅繖涓枃妗h繘琛屾搷浣滀簡. <br />姣斿璇?鎴戜滑鐜板湪闇瑕佸緱鍒拌妭鐐筁ogin/Weapon/W鐨勭涓涓妭鐐圭殑灞炴?閭d箞鎴戜滑鍙互濡備笅榪涜. <br /><font color="#ffffff"><span id="vbz9rfz" class="lOl0lO1OlO0">鏈枃鐢?鐐瑰嚮璁捐 http://www.djasp.Net銆鏀墮泦鏁寸悊銆傝阿緇濇棤鑱婁箣浜鴻漿杞斤紒</span><br /><br /></font>//聽棣栧厛瀵箈ml瀵硅薄榪涜鍒ゆ柇 <br />checkXMLDocObj聽聽聽聽=聽function(xmlFile) <br />{ <br />聽聽聽聽var聽xmlDoc聽聽聽聽=聽loadXML(xmlFile); <br />聽聽聽聽if(xmlDoc==null) <br />聽聽聽聽{ <br />聽聽聽聽聽聽聽聽alert(鈥欐偍鐨勬祻瑙堝櫒涓嶆敮鎸亁ml鏂囦歡璇誨彇,浜庢槸鏈〉闈㈢姝㈡偍鐨勬搷浣?鎺ㄨ崘浣跨敤IE5.0浠ヤ笂鍙互瑙e喅姝ら棶棰?鈥?; <br />聽聽聽聽聽聽聽聽window.location.href=鈥?Index.aspx鈥? <br />聽聽聽聽} <br />聽聽聽聽 <br />聽聽聽聽return聽xmlDoc; <br />} <br /><font color="#ffffff"><span id="5hvvxzt" class="l100lO1OlO0">鈽呯偣鍑昏璁♀槄 http://www.djasp.Net銆鍏ㄥ姏鎵撻燱EB鎶鏈珯鐐癸紝嬈㈣繋澶у璁塊棶錛?/span><br /></font>//聽鐒跺悗寮濮嬭幏鍙栭渶瑕佺殑Login/Weapon/W鐨勭涓涓妭鐐圭殑灞炴у?<br />var聽xmlDoc聽聽聽聽=聽checkXMLDocObj(鈥?EBS/XML/Login.xml鈥?; <br />var聽v聽聽聽聽=聽xmlDoc.getElementsByTagName(鈥橪ogin/Weapon/W鈥?[0].childNodes.getAttribute(鈥橳ext鈥? <br />鑰屾垜鍦ㄦ垜鐨勭▼搴忎腑鐨勫啓娉曟槸榪欐牱瀛愮殑,褰撶劧鎴戝湪紼嬪簭涓殑鍐欐硶鏄凡緇忓簲鐢ㄥ埌瀹為檯涓殑浜?涓騫剁粰鍑烘潵,浠ヤ緵鏌ョ湅 <br /><font color="#ffffff"><span id="lp9pprv" class="l100lO1Oll0">鏈枃鐢?鈽呯偣鍑昏璁♀槄 http://www.djasp.Net銆鏀墮泦鏁寸悊銆傝阿緇濇棤鑱婁箣浜鴻漿杞斤紒</span><br /></font>initializeSelect聽聽聽聽=聽function(oid,聽xPath) <br />{ <br />聽聽聽聽var聽xmlDoc聽聽聽聽=聽checkXMLDocObj(鈥?EBS/XML/Login.xml鈥?; <br />聽聽聽聽var聽n; <br />聽聽聽聽var聽l; <br />聽聽聽聽var聽e聽聽聽聽=聽$(oid); <br />聽聽聽聽if(e!=null) <br />聽聽聽聽{ <br />聽聽聽聽聽聽聽聽n聽聽聽聽=聽xmlDoc.getElementsByTagName(xPath)[0].childNodes; <br />聽聽聽聽聽聽聽聽l聽聽聽聽=聽n.length; <br />聽聽聽聽聽聽聽聽for(var聽i=0;聽i<l;聽i++) <br />聽聽聽聽聽聽聽聽{ <br />聽聽聽聽聽聽聽聽聽聽聽聽var聽option聽聽聽聽=聽document.createElement(鈥檕ption鈥?; <br />聽聽聽聽聽聽聽聽聽聽聽聽option.value聽聽聽聽=聽n[i].getAttribute(鈥橵alue鈥?; <br />聽聽聽聽聽聽聽聽聽聽聽聽option.innerHTML聽聽聽聽=聽n[i].getAttribute(鈥橳ext鈥?; <br />聽聽聽聽聽聽聽聽聽聽聽聽e.appendChild(option); <br />聽聽聽聽聽聽聽聽} <br />聽聽聽聽} <br />} <br />涓婇潰鐨勮闂唬鐮佷腑,鎴戜滑鏄氳繃xmlDoc.getElementsByTagName(xPath)鏉ヨ繘琛岀殑. <br />榪樺彲浠ラ氳繃xmlDoc.documentElement.childNodes(1)..childNodes(0).getAttribute(鈥橳ext鈥?榪涜璁塊棶. <br />涓浜涘父鐢ㄦ柟娉? <br />xmlDoc.documentElement.childNodes(0).nodeName,鍙互寰楀埌榪欎釜鑺傜偣鐨勫悕縐? <br />xmlDoc.documentElement.childNodes(0).nodeValue,鍙互寰楀埌榪欎釜鑺傜偣鐨勫?聽榪欎釜鍊兼槸鏉ヨ嚜浜庤繖鏍峰瓙鐨剎ml鏍煎紡:<a>b</b>,聽浜庢槸鍙互寰楀埌b榪欎釜鍊? <br />xmlDoc.documentElement.childNodes(0).hasChild,鍙互鍒ゆ柇鏄惁鏈夊瓙鑺傜偣 <br /><font color="#ffffff"><span id="9xpz31x" class="l000lO1OlO0">鐩楃増瀹冧漢緗戠珯鐨勫唴瀹瑰彲鑰伙紝鎮ㄦ煡鐪嬬殑鍐呭鏉ユ簮浜庘槄鐐瑰嚮璁捐鈽厀ww.djasp.Net </span><br /></font>鏍規嵁鎴戠殑緇忛獙,鏈濂芥槸浣跨敤getElementsByTagName(xPath)鐨勬柟娉曞鑺傜偣榪涜璁塊棶,鍥犱負榪欐牱瀛愬彲浠ョ洿鎺ラ氳繃xPath鏉ュ畾浣嶈妭鐐?榪欐牱瀛愪細鏈夋洿濂界殑鎬ц兘. <br /></p><p></p></div> <img src ="http://www.tkk7.com/xzclog/aggbug/81495.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/xzclog/" target="_blank">xzc</a> 2006-11-16 12:25 <a href="http://www.tkk7.com/xzclog/archive/2006/11/16/81495.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>鍏煎鍦↖E鍜孎irefox嫻忚鍣ㄤ笅鎿嶄綔XML(鑻?http://www.tkk7.com/xzclog/archive/2006/11/16/81492.htmlxzcxzcThu, 16 Nov 2006 04:20:00 GMThttp://www.tkk7.com/xzclog/archive/2006/11/16/81492.htmlhttp://www.tkk7.com/xzclog/comments/81492.htmlhttp://www.tkk7.com/xzclog/archive/2006/11/16/81492.html#Feedback1http://www.tkk7.com/xzclog/comments/commentRss/81492.htmlhttp://www.tkk7.com/xzclog/services/trackbacks/81492.htmlhttp://www.w3schools.com錛岃櫧鏄嫳鏂囩増錛屼絾鍏惰剼鏈敤娉曠浉淇″ぇ瀹惰繕鏄湅寰楁噦鐨勶紝甯屾湜瀵瑰ぇ瀹剁紪鍐欏熀浜巟ml鐨勭綉欏墊湁鎵甯姪銆?

To read and update - create and manipulate - an XML document, you will need an XML parser.


Microsoft's XML Parser

Microsoft's XML parser is a COM component that comes with Internet Explorer 5 and higher. Once you have installed Internet Explorer, the parser is available to scripts.

Microsoft's XML parser supports all the necessary functions to traverse the node tree, access the nodes and their attribute values, insert and delete nodes, and convert the node tree back to XML.

The following table lists the most commonly used node types supported by Microsoft's XML parser:

Node TypeExample
Processing instruction<?xml version="1.0"?>
Element<drink type="beer">Carlsberg</drink>
Attributetype="beer"
TextCarlsberg

MSXML Parser 2.5 is the XML parser that is shipped with Windows 2000 and IE 5.5.

MSXML Parser 3.0 is the XML parser that is shipped with IE 6.0 and Windows XP.

The MSXML 3.0 parser features:

  • JavaScript, VBScript, Perl, VB, Java, C++, etc. support
  • Complete XML support
  • Full DOM and Namespace support
  • DTD and validation
  • Complete XSLT and XPath support
  • SAX2 support
  • Server-safe HTTP

To create an instance of Microsoft's XML parser with JavaScript, use the following code:

var xmlDoc=new ActiveXObject("Microsoft.XMLDOM")

To create an instance of Microsoft's XML parser with VBScript, use the following code:

set xmlDoc=CreateObject("Microsoft.XMLDOM")

To create an instance of Microsoft's XML parser in an ASP page (using VBScript), use the following code:

set xmlDoc=Server.CreateObject("Microsoft.XMLDOM")

The following code loads an existing XML document ("note.xml") into Microsoft's XML parser:

<script type="text/javascript">
var xmlDoc=new ActiveXObject("Microsoft.XMLDOM")
xmlDoc.async="false"
xmlDoc.load("note.xml")
...
...
...
</script>

The first line of the script above creates an instance of the Microsoft XML parser. The third line tells the parser to load an XML document called "note.xml". The second line turns off asynchronized loading, to make sure that the parser will not continue execution of the script before the document is fully loaded.


XML Parser in Mozilla Browsers

Plain XML documents are displayed in a tree-like structure in Mozilla (just like IE).

Mozilla also supports parsing of XML data using JavaScript. The parsed data can be displayed as HTML.

To create an instance of the XML parser with JavaScript in Mozilla browsers, use the following code:

var xmlDoc=document.implementation.createDocument("ns","root",null)

The first parameter, ns, defines the namespace used for the XML document. The second parameter, root, is the XML root element in the XML file. The third parameter, null, is always null because it is not implemented yet.

The following code loads an existing XML document ("note.xml") into Mozillas' XML parser:

<script type="text/javascript">
var xmlDoc=document.implementation.createDocument("","",null);
xmlDoc.load("note.xml");
...
...
...
</script>

The first line of the script above creates an instance of the XML parser. The second line tells the parser to load an XML document called "note.xml".


Loading an XML File - A Cross browser Example

The following example is a cross browser example that loads an existing XML document ("note.xml") into the XML parser:

<html>
<head>
<script type="text/javascript">
var xmlDoc
function loadXML()
{
//load xml file
// code for IE
if (window.ActiveXObject)
  {
  xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
  xmlDoc.async=false;
  xmlDoc.load("note.xml");
  getmessage()
  }
// code for Mozilla, etc.
else if (document.implementation &&
document.implementation.createDocument)
  {
  xmlDoc= document.implementation.createDocument("","",null);
  xmlDoc.load("note.xml");
  xmlDoc.onload=getmessage
  }
else
  {
  alert('Your browser cannot handle this script');
  }
}
function getmessage()
{
document.getElementById("to").innerHTML=
xmlDoc.getElementsByTagName("to")[0].firstChild.nodeValue
document.getElementById("from").innerHTML=
xmlDoc.getElementsByTagName("from")[0].firstChild.nodeValue
document.getElementById("message").innerHTML=
xmlDoc.getElementsByTagName("body")[0].firstChild.nodeValue
}
</script>
</head>
<body onload="loadXML()" bgcolor="yellow">
<h1>W3Schools Internal Note</h1>
<p><b>To:</b> <span id="to"></span><br />
<b>From:</b> <span id="from"></span>
<hr />
<b>Message:</b> <span id="message"></span>
</p>
</body>
</html>

Try it yourself


Loading XML Text Into the Parser

Internet Explorer supports two ways of loading XML into a document object: the load() method and the loadXML() method. The load() method loads an XML file and the loadXML() method loads a text string that contains XML code.

The following code loads a text string into Microsoft's XML parser:

<script type="text/javascript">
var txt="<note>"
txt=txt+"<to>Tove</to><from>Jani</from>"
txt=txt+"<heading>Reminder</heading>"
txt=txt+"<body>Don't forget me this weekend!</body>"
txt=txt+"</note>"
var xmlDoc=new ActiveXObject("Microsoft.XMLDOM")
xmlDoc.async="false"
xmlDoc.loadXML(txt)
...
...
...
</script>

If you have Internet Explorer, you can try it yourself.



xzc 2006-11-16 12:20 鍙戣〃璇勮
]]>
Buffalo VS DWRhttp://www.tkk7.com/xzclog/archive/2006/10/19/76177.htmlxzcxzcThu, 19 Oct 2006 07:31:00 GMThttp://www.tkk7.com/xzclog/archive/2006/10/19/76177.htmlhttp://www.tkk7.com/xzclog/comments/76177.htmlhttp://www.tkk7.com/xzclog/archive/2006/10/19/76177.html#Feedback0http://www.tkk7.com/xzclog/comments/commentRss/76177.htmlhttp://www.tkk7.com/xzclog/services/trackbacks/76177.html

鎽樿:

鏈枃鏍規嵁BJUG maillist璁ㄨ鏁寸悊錛屽彇鑷狟uffalo緗戠珯錛屽湪姝ゅMichael鐨勮礎鐚〃紺烘劅璋紒鏂囦腑寮曠敤鐨勮瘎璁轟粎琛ㄧず涓漢瑙傜偣錛屼緵澶у浣滀負鎶鏈弬鑰冦傚厛鏁僵Michael涓涓紝鑳藉仛鍒拌繖鏍鳳紝Michael浠樺嚭浜嗗緢澶氥備笅鏂囩畝鍗曟瘮杈冧竴涓婤uffalo鍜孌WR錛屼袱鑰呯殑鎬濊礬鍩烘湰綾諱技錛屾湁寰堝鍏辨х殑涓滆タ銆傛葷殑鐪嬫潵錛孊uffalo鑳芥弧瓚沖熀鏈殑闇瑕侊紝浣咲WR宸茬粡鍦ㄦ暣浣撶郴緇熺粨鏋勪笂鏈変簡鏇村浼樺娍...
Buffalo VS DWR

浣滆咃細cleverpig

澹版槑錛氭枃涓紩鐢ㄧ殑璇勮浠呰〃紺轟釜浜鴻鐐癸紝渚涘ぇ瀹朵綔涓烘妧鏈弬鑰冦?/span>


寮綃囪█錛?/span>

聽聽聽聽鏈枃鏍規嵁BJUG maillist璁ㄨ鏁寸悊錛屽彇鑷?a target="_new">Buffalo緗戠珯錛屽湪姝ゅMichael鐨勮礎鐚〃紺烘劅璋紒鏂囦腑寮曠敤鐨勮瘎璁轟粎琛ㄧず涓漢瑙傜偣錛屼緵澶у浣滀負鎶鏈弬鑰冦傚厛鏁僵Michael涓涓紝鑳藉仛鍒拌繖鏍鳳紝Michael浠樺嚭浜嗗緢澶氥備笅鏂囩畝鍗曟瘮杈冧竴涓婤uffalo鍜孌WR錛屼袱鑰呯殑鎬濊礬鍩烘湰綾諱技錛屾湁寰堝鍏辨х殑涓滆タ銆傛葷殑鐪嬫潵錛孊uffalo鑳芥弧瓚沖熀鏈殑闇瑕侊紝浣咲WR宸茬粡鍦ㄦ暣浣撶郴緇熺粨鏋勪笂鏈変簡鏇村浼樺娍銆傛鏋剁殑鐢熷懡鍛ㄦ湡鏄湁闄愮殑錛屽鏋滀笉鑳戒笌鏃朵勘榪涳紝灝嗚繜鏃╅潰涓磋娣樻卑鐨勫眬闈€?br />
鐗堟潈澹版槑錛氫換浣曡幏寰桵atrix鎺堟潈鐨勭綉绔欙紝杞澆鏃惰鍔″繀淇濈暀浠ヤ笅浣滆呬俊鎭拰閾炬帴
浣滆?cleverpig;cleverpig
鍘熸枃:http://www.matrix.org.cn/resource/article/2006-10-18/Buffalo+DWR_4ebd1e01-5e90-11db-a5c2-7f23a8944cb0.html
鍏抽敭瀛?buffalo,dwr,ajax,姣旇緝

涓銆佷袱涓狝jax妗嗘灦錛?/span>

image

聽聽聽聽Buffalo鏄竴涓負java web欏圭洰鑰岃璁$殑杞婚噺綰JAX妗嗘灦銆傚畠鏄紑婧愮殑錛圓pache License 2.0錛夛紝鍏跺姛鑳藉己澶т笖鏄撶敤銆備富瑕佽В鍐沖湪j2ee ajax寮鍙戜腑鐨勫父瑙侀棶棰樸傚畠鎵胯涓哄紑鍙戣呭拰鏈緇堢敤鎴烽兘鑳藉彈鐩娿傛渶閲嶈鐨凚uffalo鐨勪綔鑰匨ichael Chen鏄綅涓浗寮鍙戣咃紝浠栧氨鐢熸椿鍦ㄥ寳浜?br />
image

聽聽聽聽DWR鏄竴涓狫ava寮婧愬簱錛屽府鍔╀綘瀹炵幇Ajax緗戠珯銆傚畠鍙互璁╀綘鍦ㄦ祻瑙堝櫒涓殑Javascript浠g爜璋冪敤Web鏈嶅姟鍣ㄤ笂鐨凧ava錛屽氨鍍忓湪Java浠g爜灝卞湪嫻忚鍣ㄤ腑涓鏍楓侱WR浼氭牴鎹綘鐨凧ava綾誨姩鎬佺殑鐢熸垚Javascript浠g爜銆傝繖浜涗唬鐮佺殑欖斿姏鏄浣犳劅瑙夋暣涓狝jax璋冪敤閮芥槸鍦ㄦ祻瑙堝櫒涓婂彂鐢熺殑錛屼絾浜嬪疄涓婃槸鏈嶅姟鍣ㄦ墽琛屼簡榪欎簺浠g爜錛孌WR璐熻矗鏁版嵁鐨勪紶閫掑拰杞崲銆?br />
浜屻佸叡鎬э細

聽聽聽聽鏀寔Spring闆嗘垚錛?/span>鍧囨敮鎸併?br />
聽聽聽聽浣跨敤涓涓猄ervlet鏉ユ帴鏀舵墍鏈夌殑AJAX璇鋒眰錛?/span>
聽聽聽聽聽聽聽聽Buffalo浣跨敤ApplicationServlet<鈥斺斺斺?gt;DWR浣跨敤DWRServlet銆?br />
聽聽聽聽浣跨敤XMLHttpRequest + JavaScript 浼犺緭鏁版嵁錛?/span>
聽聽聽聽聽聽聽聽Buffalo浣跨敤buffalo.js<鈥斺斺斺?gt;DWR浣跨敤dwr.js & util.js銆?br />
聽聽聽聽鍦↗ava鍜孞avascript涔嬮棿杞崲鏁版嵁錛?/span>
聽聽聽聽聽聽聽聽Buffalo浣跨敤marshallingContext<鈥斺斺斺?gt;DWR浣跨敤Converter銆?br />
聽聽聽聽鍗忚錛?/span>
聽聽聽聽聽聽聽聽Buffalo鍦?.2.x涔嬪墠閲囩敤burlap, Buffalo瑙f瀽澶ф暟鎹噺鍙兘浼氭瘮杈冩參錛岀劧鑰屽彲浠ラ傜敤浜庡縐嶆湇鍔″櫒绔拰瀹㈡埛绔紝騫朵笖burlap鍗忚鐨勫畬鏁存у拰鏀寔鐨勬暟鎹被鍨嬫洿鍔犱赴瀵屻?.0寮濮嬮噰鐢ㄨ嚜瀹氫箟鐨勫熀浜巟ml鐨勫崗璁紙鏉ヨ嚜burlap錛屽仛浜嗘洿閫傚悎web鐨勪慨鏀癸級錛屽茍鑷緙栧啓浜嗚В鏋愬櫒錛屾ц兘鏇撮珮銆?br />
聽聽聽聽聽聽聽聽DWR浣跨敤鑷畾涔夌殑綆鍗曟枃鏈崗璁?br />

涓夈丅uffalo鐗規э細

聽聽 1. 鍩轟簬prototype錛?/span>濡傛灉浣犵殑AJAX搴旂敤涔熸槸鍩轟簬prototype錛岄偅涔堝彲浠ュ噺灝戦噸澶嶅姞杞絧rototype鐨勫甫瀹斤紝騫朵笖鑾峰緱鐩稿綋涓鑷寸殑緙栫▼姒傚康銆?br />
聽聽 2. Bind錛?/span>鎻愪緵浜嗗緇撴灉鏁版嵁鐨勫鐞嗭紝鐩存帴灝嗘暟鎹粦瀹氬埌欏甸潰瀵硅薄騫跺睍紺猴紝榪欐槸涓涓姩浜虹殑鐗規с傦紙DWR鍦║til.js涓篃鎻愪緵浜嗕竴浜涙柟娉曟潵綆鍖栨暟鎹殑灞曠ず錛屼絾涓嶅 Buffalo鍋氱殑鏇村銆? 鍦?.0涓紝Bind鑳藉姏鏇村姞寮哄ぇ錛岃兘澶熷皢鍊肩洿鎺ョ粦瀹氬埌琛ㄥ崟鍏冪礌銆佽〃鏍箋丏IV/Span銆佺敋鑷蟲暣涓〃鍗曚笂銆傚叧閿槸榪欑緇戝畾鏄棤渚靛叆騫朵笖涓巄uffalo 鏁翠綋緇撴瀯瀹屽叏鏁村悎錛屽澶栬〃鐜板彧鏈変竴涓畝鍗曠殑buffalo.bindReply鎴栬匓uffalo.Bind.bind鍗沖彲銆俬ttp://buffalo.sourceforge.net/binding.html鏈変竴浜涙弿榪般?br />
聽聽 3. 搴忓垪鍖栵細Buffalo鏀寔浠繪剰瀵硅薄錛屼換鎰忔繁搴︼紝浠繪剰鏁版嵁緇撴瀯鐨刯ava鍒癹avascript浠ュ強javascript鍒癹ava鐨勫弻鍚戝簭鍒楀寲銆傚茍涓旀敮鎸佸紩鐢ㄣ傝繖閲屾湁瀹屾暣鐨勫崗璁鏄庛傜敱浜庢枃妗e拰婕旂ず涓嶅厖鍒嗭紝寰堝浜轟互涓篵uffalo涓嶆敮鎸佷換鎰忓璞′簡 ~

聽聽 4. 鐢熷懡鍛ㄦ湡瀵硅薄璁塊棶錛?/span>1.2.4涔嬪墠闇瑕佺戶鎵夸竴涓狟uffaloService,
聽聽聽聽浠?.2.4寮濮嬪氨涓嶉渶瑕佺戶鎵夸簡錛屽紩鍏ヤ簡綰跨▼瀹夊叏鐨凚uffaloContext瀵硅薄錛屽彧闇瑕侀氳繃BuffaloContext.getContext()鍗沖彲鑾峰緱涓涓嚎紼嬪畨鍏ㄧ殑寮曠敤錛屽茍涓斿Request鐨勫悇縐嶅睘鎬ц繘琛屾搷浣溿傛洿鏂逛究鐨勬槸錛?br />

聽聽聽聽聽聽Map BuffaloContext.getContext.getSession()
聽聽聽聽聽聽Map BuffaloContext.getContext.getApplication()
聽聽聽聽聽聽Map BuffaloContext.getContext.getCookie()

聽聽聽聽聽聽鍗沖彲鑾峰緱session/application/cookie鐨凪ap,鎿嶄綔榪欎簺Map鍗沖彲鑾峰緱瀵硅繖浜涚敓鍛藉懆鏈熺殑鍚勭鍙橀噺榪涜鏌ヨ鍜屾洿鏂般傝繖涓壒鎬у弬鑰冧簡webwork涓瑼ctionContext鐨勮璁°?br />
聽聽 5. 瀵笴ollection/Array鐨勬ā緋婂鐞嗭細buffalo涓彁渚涗簡瀵笴ollection/Array瀵硅薄鐨勬ā緋婅瘑鍒兘鍔涖備緥濡傦細鏈嶅姟鍣ㄧ鏈変竴涓柟娉曢渶瑕丩ist鍙傛暟錛屽鎴風浼犻掕繃鍘諱竴涓猨avascript鏁扮粍灝卞彲浠ヤ簡錛屼笉闇瑕佽垂蹇冪殑緇勮瀵硅薄銆俠uffalo閫氳繃榪欎簺寰堢粏灝忕殑鍦版柟鏉ユ彁楂樼▼搴忓憳鐢熶駭鍔涖?br />
聽聽 6. 瀹㈡埛绔粍瑁呭璞★細鎹姤鍛奃WR鍙敮鎸佺畝鍗曟暟鎹被鍨嬩綔涓哄弬鏁板湪瀹㈡埛绔紶鍏ャ俠uffalo鏀寔鍦ㄥ鎴風緇勮瀵硅薄錛岀敋鑷沖彲浠ョ洿鎺ュ皢鏁翠釜琛ㄥ崟搴忓垪鍖栦負涓涓璞′綔涓哄弬鏁頒紶緇欒繙紼嬪鎴風銆侱WR鍗忚澶╃敓涓嶈凍錛岃繖鏂歸潰錛屾垜鐚滄兂瀹冨畬鍏ㄦ病鏈夎兘鍔涖?br />
聽聽 7. 瀵歸噸杞芥柟娉曠殑澶勭悊鑳藉姏錛?/span>鐢變簬java涓巎avascript涔嬮棿綾誨瀷鐨勪笉鍖歸厤錛孌WR鐨勪唬鐮佺敓鎴愭棤娉曞閲嶈澆鏂規硶榪涜澶勭悊銆備緥濡傦紝sum(double,double), sum(int, int) DWR寰堝彲鑳戒笉鐭ラ亾浣犺璋冪敤鍝竴涓備粠2.0寮濮媌uffalo鏀寔浜嗗閲嶈澆鐨勫鐞嗐?br />
鍥涖丏WR鐗規э細

聽聽 1. 鏀寔Batch錛?/span>鍙互灝嗗涓猄ervice鍑芥暟璋冪敤鏀懼湪涓涓猉MLHttpRequest璇鋒眰涓畬鎴愩?br />
聽聽 Michael Chen璇勮錛氭垜涓鐩磋涓鴻繖涓嶆槸涓涓ソ鐨勫疄璺點傚湪瀹㈡埛绔彂璧峰涓姹傚茍鑾峰緱鍝嶅簲闄や簡鑾峰緱緙栫▼鐨勫鏉傚錛岃繕澧炲姞浜嗘湇鍔″櫒绔璁ervice鐨勮嚜鐢卞害銆傝繖縐嶆柟寮忔劅瑙変笂鏇撮紦鍔變負榪滅▼璋冪敤璁捐緇嗙矑搴︾殑鏈嶅姟銆佸皢緇勮閫昏緫鏀懼湪瀹㈡埛绔傝繖縐嶈璁¢鏍兼垜涓嶅お鍠滄錛屽洜姝atch涔熶竴鐩存病鏈夎冭檻瀹炵幇錛岃櫧鐒跺疄鐜頒笉澶夯鐑︺?br />
聽聽 2. Converter錛?/span>鍙互杞崲浠繪剰綾誨瀷鐨凧ava瀵硅薄鍒癑avaScript,騫跺厑璁哥洿鎺ヤ嬌鐢ㄣ備緥濡傦細Customer綾誨寘鍚竴涓猘ddress鍙橀噺錛屽綋AjaxCall榪斿洖Customer瀵硅薄鐨勬椂鍊欙紝鍙互鐩存帴鍦↗avascript涓嬌鐢╟ustomer.address鏉ヨ幏寰桝ddress鐨勪俊鎭?br />
聽聽 3. HttpServlet錛?/span>鏀寔鍦ㄨ璋冪敤鐨凷ervice鏂規硶涓幏寰桯ttpServletRequest鍜孒ttpServletResponse瀵硅薄錛岃繖鏍峰彲浠ヨ闂綋鍓峉ession涓殑鏁版嵁銆?br />
聽聽 4. 鍏佽Expose閮ㄥ垎鍑芥暟鍜屽睘鎬с?/span>(Buffalo鏃犻檺鍒訛紝鍙互璁塊棶Service涓殑浠繪剰鍑芥暟銆?

聽聽 Michael Chen璇勮: 榪欎釜鎴戜篃鑰冭檻榪?..DWR鐨勪唬鐮佺敓鎴愭満鍒朵嬌寰楀畠涓嶅緱涓嶉氳繃榪欑鏂瑰紡鍑忓皬浜涙祦閲忋侭uffalo濡傛灉鎯沖疄鐜拌繖涓壒鎬т篃涓嶆槸涓嶈錛屽彧鏄垜瑙夊緱錛屾棦鐒?Service杈涜緵鑻﹁嫤瀹炵幇浜嗭紝榪橀渶瑕侀氳繃榪欑鏂瑰紡鏉ヨ鍒漢涓嶈兘鐢ㄤ箞錛熷喌涓攂uffalo娌℃湁浠g爜鐢熸垚錛屾棤璁轟綘鏆撮湶澶氬皯鏂規硶嫻侀噺閮芥槸涓鏍風殑銆傝冭檻鍒板疄闄呮儏鍐碉紝buffalo娌℃湁瀹炵幇榪欎釜鐗規с?br />
聽聽 5. DWR2.0涓彁鍑轟簡Reverse Ajax錛?/span>鎻愪緵鍦↗ava浠g爜涓潵澶勭悊欏甸潰涓婂厓绱犵殑鍔熻兘銆?br />
聽聽 Michael Chen璇勮: 榪欎釜涓滀笢...涔熻繕鏄唬鐮佺敓鎴愮殑trick...鐒惰屾垜鐨勬佸害鏄痡avascript涓巎ava鍚屾牱閲嶈鐨勶紝鍥犳涓嶄細璁╀唬鐮佺敓鎴愮被鐨勪笢瑗跨牬鍧廽avascript鐨勬暣浣撴с?br />

浜斻佺浉鍏寵祫婧愶細

image

聽聽 鍦ㄨ繃鍘葷殑涓ゅ勾闂達紝baffalo鐨勫紑鍙戣呮嫢鏈夊煎緱鍏村鐨勭Н鏋佸弽棣堬細buffalo闈炲父閫備簬鍦╦ava web欏圭洰鐨刟jax寮鍙戙備負浜嗗府鍔╂洿澶氱殑鐢ㄦ埛鏇村ソ鍦頒嬌鐢╞uffalo錛屼粬浠湡寰呬綘鐨勫府鍔╋細鍙戝竷鏂囨。銆乥ug鎶ュ憡鍜宐ug淇絳夈?br />
聽聽 baffalo Maillist: buffalo-users@lists.sourceforge.net

聽聽 baffalo 璁哄潧:http://groups.google.com/group/amowa

image
cleverpig鍐欑殑Buffalo鐨勬渶浣沖疄璺?/a>


xzc 2006-10-19 15:31 鍙戣〃璇勮
]]>
Ajax鑷姩瀹屾垚鍔熻兘http://www.tkk7.com/xzclog/archive/2006/10/08/73785.htmlxzcxzcSun, 08 Oct 2006 06:12:00 GMThttp://www.tkk7.com/xzclog/archive/2006/10/08/73785.htmlhttp://www.tkk7.com/xzclog/comments/73785.htmlhttp://www.tkk7.com/xzclog/archive/2006/10/08/73785.html#Feedback1http://www.tkk7.com/xzclog/comments/commentRss/73785.htmlhttp://www.tkk7.com/xzclog/services/trackbacks/73785.html

榪戞棩瀛︿範浜嗕竴涓婣JAX錛岀収鍋氫簡鍑犱釜渚嬪瓙錛屾劅瑙夋瘮杈冩柊濂囥?/p>

絎竴涓氨鏄嚜鍔ㄥ畬鎴愮殑鍔熻兘鍗矨utocomplete,鍏蜂綋鐨勪緥瀛愬彲浠ュ湪榪欓噷鐪嬶細http://www.b2c-battery.co.uk

鍦⊿earch妗嗗唴杈撳叆涓涓駭鍝佸瀷鍙鳳紝灝卞彲浠ョ湅瑙佹晥鏋滀簡銆?/p>

榪欓噷鐢ㄥ埌浜嗕竴涓紑婧愮殑浠g爜錛?a >AutoAssist 錛屾湁鍏磋叮鐨勫彲浠ョ湅涓涓嬨?/p>

浠ヤ笅涓轟唬鐮佺墖鏂細

index.htm

<script type="text/javascript" src="javascripts/prototype.js"></script>
<script type="text/javascript" src="javascripts/autoassist.js"></script>
<link rel="stylesheet" type="text/css" href="styles/autoassist.css"/>

<div>

<input type="text" name="keyword" id="keyword"/>
<script type="text/javascript">
Event.observe(window, "load", function() {
聽var aa = new AutoAssist("keyword", function() {
聽聽return "forCSV.php?q=" + this.txtBox.value;
聽});
});

</script>
</div>

涓嶇煡閬撲負浠涔堜笉鑳界敤keywords鍋氭枃鏈鐨勫悕瀛楋紝鎴戣瘯浜嗗緢涔咃紝鍚庢潵榪樻槸鐢╧eyword,鎼炲緱榪樿淇敼鍘熶唬鐮併?/p>

forCSV.php

<?php
聽 $keyword = $_GET['q'];
聽 $count = 0;
聽 $handle = fopen("products.csv", "r");
聽 while (($data = fgetcsv($handle, 1000)) !== FALSE) {
聽聽聽 if (preg_match("/$keyword/i", $data[0])) {
聽聽聽聽聽 if ($count++ > 10) { break; }
?>
聽聽聽聽聽 <div onSelect="this.txtBox.value='<?php echo $data[0]; ?>';">
聽聽聽聽聽聽聽 <?php echo $data[0]; ?>
聽聽聽聽聽 </div>
<?php
聽聽聽 }
聽 }
聽 fclose($handle);
聽 if ($count == 0) {
?>
聽 : (, nothing found.
<?php
聽 }
?>

鍘熸潵鐨勪緥瀛愪腑鐨凜SV鏂囦歡鏄牴鎹甛t鏉ュ垎闅旂殑錛屾垜浠篃鍙互鐢ㄧ┖鏍兼垨鍏跺畠鐨勬潵鍒嗛殧錛岃繖鍙栧喅浜庝綘鐨勬暟鎹粨鏋勩?/p>

褰撶劧浣犱篃鍙互涓嶈鏂囦歡錛屾敼浠庢暟鎹簱閲岃璧勬枡錛屽氨涓嶅啀搴熻瘽浜嗐?br />

鏁堟灉鍥懼涓嬶細



Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=635858

[鐐瑰嚮姝ゅ鏀惰棌鏈枃]聽聽 jxyuhua鍙戣〃浜?2006騫?3鏈?3鏃?12:08:00



xzc 2006-10-08 14:12 鍙戣〃璇勮
]]>
XML 闂: 瓚呰秺 DOM (杞繪澗浣跨敤 DOM 鐨勬妧宸у拰璇紿?http://www.tkk7.com/xzclog/archive/2006/08/22/65083.htmlxzcxzcTue, 22 Aug 2006 07:21:00 GMThttp://www.tkk7.com/xzclog/archive/2006/08/22/65083.htmlhttp://www.tkk7.com/xzclog/comments/65083.htmlhttp://www.tkk7.com/xzclog/archive/2006/08/22/65083.html#Feedback0http://www.tkk7.com/xzclog/comments/commentRss/65083.htmlhttp://www.tkk7.com/xzclog/services/trackbacks/65083.html鏂囨。瀵硅薄妯″瀷錛圖ocument Object Model錛孌OM錛夋槸鐢ㄤ簬鎿嶇旱 XML 鍜?HTML 鏁版嵁鐨勬渶甯哥敤宸ュ叿涔嬩竴錛岀劧鑰屽畠鐨勬綔鍔涘嵈寰堝皯琚厖鍒嗘寲鎺樺嚭鏉ャ傞氳繃鍒╃敤 DOM 鐨勪紭鍔匡紝騫朵嬌瀹冩洿鍔犳槗鐢紝鎮ㄥ皢鑾峰緱涓嬈懼簲鐢ㄤ簬 XML 搴旂敤紼嬪簭錛堝寘鎷姩鎬?Web 搴旂敤紼嬪簭錛夌殑寮哄ぇ宸ュ叿銆?/blockquote>

鏈湡鏂囩珷浠嬬粛浜嗕竴浣嶅涓茬殑涓撴爮浣滃錛屽悓鏃朵篃鏄垜鐨勬湅鍙嬪拰鍚屼簨 Dethe Elza銆侱ethe 鍦ㄥ埄鐢?XML 榪涜 Web 搴旂敤紼嬪簭寮鍙戞柟闈㈢粡楠屼赴瀵岋紝鍦ㄦ錛屾垜瑕佹劅璋粬瀵規垜鍦ㄤ粙緇嶄嬌鐢?DOM 鍜?ECMAScript 榪涜 XML 緙栫▼榪欎竴鏂歸潰鐨勫府鍔┿傝瀵嗗垏鍏蟲敞鏈笓鏍忥紝浠ヤ簡瑙?Dethe 鐨勬洿澶氫笓鏍忔枃绔犮?鈥斺?David Mertz

DOM 鏄鐞?XML 鍜?HTML 鐨勬爣鍑?API 涔嬩竴銆傜敱浜庡畠鍗犵敤鍐呭瓨澶с侀熷害鎱紝騫朵笖鍐楅暱錛屾墍浠ョ粡甯稿彈鍒頒漢浠殑鎸囪矗銆傚敖綆″姝わ紝瀵逛簬寰堝搴旂敤紼嬪簭鏉ヨ錛屽畠浠嶇劧鏄渶浣抽夋嫨錛岃屼笖姣?XML 鐨勫彟涓涓富瑕?API 鈥斺?SAX 鏃犵枒瑕佺畝鍗曞緱澶氥侱OM 姝i愭笎鍑虹幇鍦ㄤ竴浜涘伐鍏蜂腑錛屾瘮濡?Web 嫻忚鍣ㄣ丼VG 嫻忚鍣ㄣ丱penOffice錛岀瓑絳夈?/p>

DOM 寰堝ソ錛屽洜涓哄畠鏄竴縐嶆爣鍑嗭紝騫朵笖琚箍娉涘湴瀹炵幇錛屽悓鏃朵篃鍐呯疆鍒板叾浠栨爣鍑嗕腑銆備綔涓烘爣鍑嗭紝瀹冨鏁版嵁鐨勫鐞嗕笌緙栫▼璇█鏃犲叧錛堣繖鍙兘鏄紭鐐癸紝涔熷彲鑳芥槸緙虹偣錛屼絾鑷沖皯浣挎垜浠鐞嗘暟鎹殑鏂瑰紡鍙樺緱涓鑷達級銆侱OM 鐜板湪涓嶄粎鍐呯疆浜?Web 嫻忚鍣紝鑰屼笖涔熸垚涓鴻澶氬熀浜?XML 鐨勮鑼冪殑涓閮ㄥ垎銆傛棦鐒跺畠宸茬粡鎴愪負鎮ㄧ殑宸ュ叿鐨勪竴閮ㄥ垎錛屽茍涓旀垨璁告偍鍋跺皵榪樹細浣跨敤瀹冿紝鎴戞兂鐜板湪搴旇鍏呭垎鍒╃敤瀹冪粰鎴戜滑甯︽潵鐨勫姛鑳戒簡銆?/p>

鍦ㄤ嬌鐢?DOM 涓孌墊椂闂村悗錛屾偍浼氱湅鍒板艦鎴愪簡涓浜涙ā寮?鈥斺?鎮ㄦ兂瑕佸弽澶嶅仛鐨勪簨鎯呫傚揩鎹鋒柟寮忓彲浠ュ府鍔╂偍澶勭悊鍐楅暱鐨?DOM錛屽茍鍒涘緩鑷В閲婄殑銆佷紭闆呯殑浠g爜銆傝繖閲屾敹闆嗕簡涓浜涙垜緇忓父浣跨敤鐨勬妧宸у拰璇紿嶏紝榪樻湁涓浜?JavaScript 紺轟緥銆?/p>

insertAfter 鍜?prependChild

絎竴涓瘈紿嶅氨鏄滄病鏈夎瘈紿嶁濄侱OM 鏈変袱縐嶆柟娉曞皢瀛╁瓙鑺傜偣娣誨姞鍒板鍣ㄨ妭鐐癸紙甯稿父鏄竴涓?Element錛屼篃鍙兘鏄竴涓?Document 鎴?DocumentFragment錛夛細appendChild(node) 鍜?insertBefore(node, referenceNode)銆傜湅璧鋒潵浼間箮緙哄皯浜嗕粈涔堛傚亣濡傛垜鎯沖湪涓涓弬鑰冭妭鐐瑰悗闈㈡彃鍏ユ垨鑰呯敱鍓嶆柊澧烇紙prepend錛変竴涓瓙鑺傜偣錛堜嬌鏂拌妭鐐逛綅浜庡垪琛ㄤ腑鐨勭涓浣嶏級錛屾垜璇ユ庝箞鍋氬憿錛熷緢澶氬勾浠ユ潵錛屾垜鐨勮В鍐蟲柟娉曟槸緙栧啓涓嬪垪鍑芥暟錛?/p>
娓呭崟 1. 鎻掑叆鍜岀敱鍓嶆柊澧炵殑閿欒鏂規硶
												
														function insertAfter(parent, node, referenceNode) {
    if(referenceNode.nextSibling) {
        parent.insertBefore(node, referenceNode.nextSibling);
    } else {
        parent.appendChild(node);
    }
}
function prependChild(parent, node) {
    if (parent.firstChild) {
        parent.insertBefore(node, parent.firstChild);
    } else {
        parent.appendChild(node);
    }
}

												
										

瀹為檯涓婏紝鍍忔竻鍗?1 涓鏍鳳紝insertBefore() 鍑芥暟宸茬粡琚畾涔変負錛屽湪鍙傝冭妭鐐逛負絀烘椂榪斿洖鍒?appendChild()銆傚洜姝わ紝鎮ㄥ彲浠ヤ笉浣跨敤涓婇潰鐨勬柟娉曪紝鑰屼嬌鐢?娓呭崟 2 涓殑鏂規硶錛屾垨鑰呰煩榪囧畠浠粎浣跨敤鍐呯疆鍑芥暟錛?/p>
娓呭崟 2. 鎻掑叆鍜岀敱鍓嶆柊澧炵殑姝g‘鏂規硶
												
														function insertAfter(parent, node, referenceNode) {
    parent.insertBefore(node, referenceNode.nextSibling);
}
function prependChild(parent, node) {
    parent.insertBefore(node, parent.firstChild);
}

												
										

濡傛灉鎮ㄥ垰鍒氭帴瑙?DOM 緙栫▼錛屾湁蹇呰鎸囧嚭鐨勬槸錛岃櫧鐒舵偍鍙互浣垮涓寚閽堟寚鍚戜竴涓妭鐐癸紝浣嗚鑺傜偣鍙兘瀛樺湪浜?DOM 鏍戜腑鐨勪竴涓綅緗傚洜姝わ紝濡傛灉鎮ㄦ兂灝嗗畠鎻掑叆鍒版爲涓紝娌″繀瑕佸厛灝嗗畠浠庢爲涓Щ闄わ紝鍥犱負瀹冧細鑷姩琚Щ闄ゃ傚綋閲嶆柊灝嗚妭鐐規帓搴忔椂錛岃繖縐嶆満鍒跺緢鏂逛究錛屼粎闇灝嗚妭鐐規彃鍏ュ埌鏂頒綅緗嵆鍙?/p>

鏍規嵁榪欑鏈哄埗錛岃嫢鎯充氦鎹袱涓浉閭昏妭鐐癸紙縐頒負 node1 鍜?node2錛夌殑浣嶇疆錛屽彲浠ヤ嬌鐢ㄤ笅鍒楁柟妗堜箣涓錛?/p>
												
														
																
																		node1.parentNode.insertBefore(node2, node1);
																
														
node1.parentNode.insertBefore(node2, node1);

鎴?/p>
												
														
																
																		node1.parentNode.insertBefore(node1.nextSibling, node1);
																
														
node1.parentNode.insertBefore(node1.nextSibling, node1);





鍥為〉棣?/font>


榪樺彲浠ヤ嬌鐢?DOM 鍋氫粈涔堬紵

Web 欏甸潰涓ぇ閲忓簲鐢ㄤ簡 DOM銆傝嫢璁塊棶 bookmarklets 绔欑偣錛堝弬闃?鍙傝冭祫鏂?/font>錛夛紝鎮ㄤ細鍙戠幇寰堝鏈夊垱鎰忕殑綆鐭剼鏈紝瀹冧滑鍙互閲嶆柊緙栨帓欏甸潰錛屾彁鍙栭摼鎺ワ紝闅愯棌鍥劇墖鎴?Flash 騫垮憡錛岀瓑絳夈?/p>

浣嗘槸錛屽洜涓?Internet Explorer 娌℃湁瀹氫箟 Node 鎺ュ彛甯擱噺錛堝彲浠ョ敤浜庤瘑鍒妭鐐圭被鍨嬶級錛屾墍浠ユ偍蹇呴』紜繚鍦ㄩ仐婕忔帴鍙e父閲忔椂錛岄鍏堜負 Web 鍦?DOM 鑴氭湰涓畾涔夋帴鍙e父閲忋?/p>
娓呭崟 3. 紜繚鑺傜偣琚畾涔?/b>
												
														if (!window['Node']) {
    window.Node = new Object();
    Node.ELEMENT_NODE = 1;
    Node.ATTRIBUTE_NODE = 2;
    Node.TEXT_NODE = 3;
    Node.CDATA_SECTION_NODE = 4;
    Node.ENTITY_REFERENCE_NODE = 5;
    Node.ENTITY_NODE = 6;
    Node.PROCESSING_INSTRUCTION_NODE = 7;
    Node.COMMENT_NODE = 8;
    Node.DOCUMENT_NODE = 9;
    Node.DOCUMENT_TYPE_NODE = 10;
    Node.DOCUMENT_FRAGMENT_NODE = 11;
    Node.NOTATION_NODE = 12;
}

												
										

娓呭崟 4 灞曠ず濡備綍鎻愬彇鍖呭惈鍦ㄨ妭鐐逛腑鐨勬墍鏈夋枃鏈妭鐐癸細


娓呭崟 4. 鍐呴儴鏂囨湰
												
														function innerText(node) {
    // is this a text or CDATA node?
    if (node.nodeType == 3 || node.nodeType == 4) {
        return node.data;
    }
    var i;
    var returnValue = [];
    for (i = 0; i < node.childNodes.length; i++) {
        returnValue.push(innerText(node.childNodes[i]));
    }
    return returnValue.join('');
}

												
										





鍥為〉棣?/font>


蹇嵎鏂瑰紡

浜轟滑甯稿父鎶辨?DOM 澶繃鍐楅暱錛屽茍涓旂畝鍗曠殑鍔熻兘涔熼渶瑕佺紪鍐欏ぇ閲忎唬鐮併備緥濡傦紝濡傛灉鎮ㄦ兂鍒涘緩涓涓寘鍚枃鏈茍鍝嶅簲鐐瑰嚮鎸夐挳鐨?<div> 鍏冪礌錛屼唬鐮佸彲鑳界被浼間簬錛?/p>
娓呭崟 5. 鍒涘緩 <div> 鐨勨滄極闀夸箣璺?/b>
												
														function handle_button() {
    var parent = document.getElementById('myContainer');
    var div = document.createElement('div');
    div.className = 'myDivCSSClass';
    div.id = 'myDivId';
    div.style.position = 'absolute';
    div.style.left = '300px';
    div.style.top = '200px';
    var text = "This is the first text of the rest of this code";
    var textNode = document.createTextNode(text);
    div.appendChild(textNode);
    parent.appendChild(div);
}

												
										

鑻ラ綣佹寜鐓ц繖縐嶆柟寮忓垱寤鴻妭鐐癸紝閿叆鎵鏈夎繖浜涗唬鐮佷細浣挎偍寰堝揩鐤叉儷涓嶅牚銆傚繀欏繪湁鏇村ソ鐨勮В鍐蟲柟妗?鈥斺?紜疄鏈夎繖鏍風殑瑙e喅鏂規錛佷笅闈㈣繖涓疄鐢ㄥ伐鍏峰彲浠ュ府鍔╂偍鍒涘緩鍏冪礌銆佽緗厓绱犲睘鎬у拰椋庢牸錛屽茍娣誨姞鏂囨湰瀛愯妭鐐廣傞櫎浜?name 鍙傛暟錛屽叾浠栧弬鏁伴兘鏄彲閫夌殑銆?/p>
娓呭崟 6. 鍑芥暟 elem() 蹇嵎鏂瑰紡
												
														function elem(name, attrs, style, text) {
    var e = document.createElement(name);
    if (attrs) {
        for (key in attrs) {
            if (key == 'class') {
                e.className = attrs[key];
            } else if (key == 'id') {
                e.id = attrs[key];
            } else {
                e.setAttribute(key, attrs[key]);
            }
        }
    }
    if (style) {
        for (key in style) {
            e.style[key] = style[key];
        }
    }
    if (text) {
        e.appendChild(document.createTextNode(text));
    }
    return e;
}

												
										

浣跨敤璇ュ揩鎹鋒柟寮忥紝鎮ㄨ兘澶熶互鏇村姞綆媧佺殑鏂規硶鍒涘緩 娓呭崟 5 涓殑 <div> 鍏冪礌銆傛敞鎰忥紝attrs 鍜?style 鍙傛暟鏄嬌鐢?JavaScript 鏂囨湰瀵硅薄鑰岀粰鍑虹殑銆?/p>
娓呭崟 7. 鍒涘緩 <div> 鐨勭畝渚挎柟娉?/b>
												
														function handle_button() {
    var parent = document.getElementById('myContainer');
    parent.appendChild(elem('div',
      {class: 'myDivCSSClass', id: 'myDivId'}
      {position: 'absolute', left: '300px', top: '200px'},
      'This is the first text of the rest of this code'));
}

												
										

鍦ㄦ偍鎯寵蹇熷垱寤哄ぇ閲忓鏉傜殑 DHTML 瀵硅薄鏃訛紝榪欑瀹炵敤宸ュ叿鍙互鑺傜渷鎮ㄥぇ閲忕殑鏃墮棿銆傛ā寮忓湪榪欓噷灝辨槸鎸囷紝濡傛灉鎮ㄦ湁涓縐嶉渶瑕侀綣佸垱寤虹殑鐗瑰畾鐨?DOM 緇撴瀯錛屽垯浣跨敤瀹炵敤宸ュ叿鏉ュ垱寤哄畠浠傝繖涓嶄絾鍑忓皯浜嗘偍緙栧啓鐨勪唬鐮侀噺錛岃屼笖涔熷噺灝戜簡閲嶅鐨勫壀鍒囥佺矘璐翠唬鐮侊紙閿欒鐨勭姜欖佺ジ棣栵級錛屽茍涓斿湪闃呰浠g爜鏃舵濊礬鏇村姞娓呮櫚銆?/p>



鍥為〉棣?/font>


鎺ヤ笅鏉ユ槸浠涔堬紵

DOM 閫氬父寰堥毦鍛婅瘔鎮紝鎸夌収鏂囨。鐨勯『搴忥紝涓嬩竴涓妭鐐規槸浠涔堛備笅闈㈡湁涓浜涘疄鐢ㄥ伐鍏鳳紝鍙互甯姪鎮ㄥ湪鑺傜偣闂村墠鍚庣Щ鍔細


娓呭崟 8. nextNode 鍜?prevNode
												
														// return next node in document order
function nextNode(node) {
    if (!node) return null;
    if (node.firstChild){
        return node.firstChild;
    } else {
        return nextWide(node);
    }
}
// helper function for nextNode()
function nextWide(node) {
    if (!node) return null;
    if (node.nextSibling) {
        return node.nextSibling;
    } else {
        return nextWide(node.parentNode);
    }
}
// return previous node in document order
function prevNode(node) {
    if (!node) return null;
    if (node.previousSibling) {
      return previousDeep(node.previousSibling);
    }
    return node.parentNode;
}
// helper function for prevNode()
function previousDeep(node) {
    if (!node) return null;
    while (node.childNodes.length) {
        node = node.lastChild;
    }
    return node;
}

												
										





鍥為〉棣?/font>


杞繪澗浣跨敤 DOM

鏈夋椂鍊欙紝鎮ㄥ彲鑳芥兂瑕侀亶鍘?DOM錛屽湪姣忎釜鑺傜偣璋冪敤鍑芥暟鎴栦粠姣忎釜鑺傜偣榪斿洖涓涓箋傚疄闄呬笂錛岀敱浜庤繖浜涙兂娉曢潪甯稿叿鏈夋櫘閬嶆э紝鎵浠?DOM Level 2 宸茬粡鍖呭惈浜嗕竴涓О涓?DOM Traversal and Range 鐨勬墿灞曪紙涓鴻凱浠?DOM 鎵鏈夎妭鐐瑰畾涔変簡瀵硅薄鍜?API錛夛紝瀹冪敤鏉ヤ負 DOM 涓殑鎵鏈夎妭鐐瑰簲鐢ㄥ嚱鏁板拰鍦?DOM 涓夋嫨涓涓寖鍥淬傚洜涓鴻繖浜涘嚱鏁版病鏈夊湪 Internet Explorer 涓畾涔夛紙鑷沖皯鐩墠鏄繖鏍鳳級錛屾墍浠ユ偍鍙互浣跨敤 nextNode() 鏉ュ仛涓浜涚被浼肩殑浜嬫儏銆?/p>

鍦ㄨ繖閲岋紝鎴戜滑鐨勬兂娉曟槸鍒涘緩涓浜涚畝鍗曘佹櫘閫氱殑宸ュ叿錛岀劧鍚庝互涓嶅悓鐨勬柟寮忕粍瑁呭畠浠潵杈懼埌棰勬湡鐨勬晥鏋溿傚鏋滄偍寰堢啛鎮夊嚱鏁板紡緙栫▼錛岃繖鐪嬭搗鏉ヤ細寰堜翰鍒囥侭eyond JS 搴擄紙鍙傞槄 鍙傝冭祫鏂?/font>錛夊皢姝ょ悊蹇靛彂鎵厜澶с?/p>
娓呭崟 9. 鍑芥暟寮?DOM 瀹炵敤宸ュ叿
												
														// return an Array of all nodes, starting at startNode and
// continuing through the rest of the DOM tree
function listNodes(startNode) {
    var list = new Array();
    var node = startNode;
    while(node) {
        list.push(node);
        node = nextNode(node);
    }
    return list;
}
// The same as listNodes(), but works backwards from startNode.
// Note that this is not the same as running listNodes() and
// reversing the list.
function listNodesReversed(startNode) {
    var list = new Array();
    var node = startNode;
    while(node) {
        list.push(node);
        node = prevNode(node);
    }
    return list;
}
// apply func to each node in nodeList, return new list of results
function map(list, func) {
    var result_list = new Array();
    for (var i = 0; i < list.length; i++) {
        result_list.push(func(list[i]));
    }
    return result_list;
}
// apply test to each node, return a new list of nodes for which
// test(node) returns true
function filter(list, test) {
    var result_list = new Array();
    for (var i = 0; i < list.length; i++) {
        if (test(list[i])) result_list.push(list[i]);
    }
    return result_list;
}

												
										

娓呭崟 9 鍖呭惈浜?4 涓熀鏈伐鍏楓?code>listNodes() 鍜?listNodesReversed() 鍑芥暟鍙互鎵╁睍鍒頒竴涓彲閫夌殑闀垮害錛岃繖涓?Array 鐨?slice() 鏂規硶鏁堟灉綾諱技錛屾垜鎶婅繖涓綔涓虹暀緇欐偍鐨勭粌涔犮傚彟涓涓渶瑕佹敞鎰忕殑鏄紝map() 鍜?filter() 鍑芥暟鏄畬鍏ㄩ氱敤鐨勶紝鐢ㄤ簬澶勭悊浠諱綍 鍒楄〃錛堜笉鍙槸鑺傜偣鍒楄〃錛夈傜幇鍦紝鎴戝悜鎮ㄥ睍紺哄畠浠殑鍑犵緇勫悎鏂瑰紡銆?/p>
娓呭崟 10. 浣跨敤鍑芥暟寮忓疄鐢ㄥ伐鍏?/b>
												
														// A list of all the element names in document order
function isElement(node) {
    return node.nodeType == Node.ELEMENT_NODE;
}
function nodeName(node) {
    return node.nodeName;
}
var elementNames = map(filter(listNodes(document),isElement), nodeName);
// All the text from the document (ignores CDATA)
function isText(node) {
    return node.nodeType == Node.TEXT_NODE;
}
function nodeValue(node) {
    return node.nodeValue;
}
var allText = map(filter(listNodes(document), isText), nodeValue);

												
										

鎮ㄥ彲浠ヤ嬌鐢ㄨ繖浜涘疄鐢ㄥ伐鍏鋒潵鎻愬彇 ID銆佷慨鏀規牱寮忋佹壘鍒版煇縐嶈妭鐐瑰茍縐婚櫎錛岀瓑絳夈備竴鏃?DOM Traversal and Range API 琚箍娉涘疄鐜幫紝鎮ㄦ棤闇棣栧厛鏋勫緩鍒楄〃錛屽氨鍙互鐢ㄥ畠浠慨鏀?DOM 鏍戙傚畠浠笉浣嗗姛鑳藉己澶э紝騫朵笖宸ヤ綔鏂瑰紡涔熶笌鎴戝湪涓婇潰鎵寮鴻皟鐨勬柟寮忕被浼箋?/p>

DOM 鐨勫嵄闄╁湴甯?/font>

娉ㄦ剰錛屾牳蹇?DOM API 騫朵笉鑳戒嬌鎮ㄥ皢 XML 鏁版嵁瑙f瀽鍒?DOM錛屾垨鑰呭皢 DOM 搴忓垪鍖栦負 XML銆傝繖浜涘姛鑳介兘瀹氫箟鍦?DOM Level 3 鐨勬墿灞曢儴鍒嗏淟oad and Save鈥濓紝浣嗗畠浠繕娌℃湁琚畬鍏ㄥ疄鐜幫紝鍥犳鐜板湪涓嶈鑰冭檻榪欎簺銆傛瘡涓鉤鍙幫紙嫻忚鍣ㄦ垨鍏朵粬涓撲笟 DOM 搴旂敤紼嬪簭錛夋湁鑷繁鍦?DOM 鍜?XML 闂磋漿鎹㈢殑鏂規硶錛屼絾璺ㄥ鉤鍙拌漿鎹笉鍦ㄦ湰鏂囪璁鴻寖鍥翠箣鍐呫?/p>

DOM 騫朵笉鏄崄鍒嗗畨鍏ㄧ殑宸ュ叿 鈥斺?鐗瑰埆鏄嬌鐢?DOM API 鍒涘緩涓嶈兘浣滀負 XML 搴忓垪鍖栫殑鏍戞椂銆傜粷瀵逛笉瑕佸湪鍚屼竴涓▼搴忎腑娣峰悎浣跨敤 DOM1 闈炲悕縐扮┖闂?API 鍜?DOM2 鍚嶇О絀洪棿鎰熺煡鐨?API錛堜緥濡傦紝createElement 鍜?createElementNS錛夈傚鏋滄偍浣跨敤鍚嶇О絀洪棿錛岃灝介噺鍦ㄦ牴鍏冪礌浣嶇疆澹版槑鎵鏈夊悕縐扮┖闂達紝騫朵笖涓嶈瑕嗙洊鍚嶇О絀洪棿鍓嶇紑錛屽惁鍒欐儏鍐典細闈炲父娣蜂貢銆備竴鑸潵璇達紝鍙鎸夌収鎯緥錛屽氨涓嶄細瑙﹀彂浣挎偍闄峰叆楹葷儲鐨勪復鐣屾儏鍐點?/p>

濡傛灉鎮ㄤ竴鐩翠嬌鐢?Internet Explorer 鐨?innerText 鍜?innerHTML 榪涜瑙f瀽錛岄偅涔堟偍鍙互璇曡瘯浣跨敤 elem() 鍑芥暟銆傞氳繃鏋勫緩綾諱技鐨勪竴浜涘疄鐢ㄥ伐鍏鳳紝鎮ㄤ細寰楀埌鏇村渚垮埄錛屽茍涓旂戶鎵夸簡璺ㄥ鉤鍙頒唬鐮佺殑浼樿秺鎬с傚皢榪欎袱縐嶆柟娉曟販鍚堜嬌鐢ㄦ槸闈炲父緋熺硶鐨勩?/p>

鏌愪簺 Unicode 瀛楃騫舵病鏈夊寘鍚湪 XML 涓侱OM 鐨勫疄鐜頒嬌鎮ㄥ彲浠ユ坊鍔犲畠浠紝浣嗗悗鏋滄槸鏃犳硶搴忓垪鍖栥傝繖浜涘瓧絎﹀寘鎷ぇ澶氭暟鐨勬帶鍒跺瓧絎﹀拰 Unicode 浠g悊瀵癸紙surrogate pair錛変腑鐨勫崟涓瓧絎︺傚彧鏈夋偍璇曞浘鍦ㄦ枃妗d腑鍖呭惈浜岃繘鍒舵暟鎹椂鎵嶄細閬囧埌榪欑鎯呭喌錛屼絾榪欐槸鍙︿竴縐嶈漿鍚戯紙gotcha錛夋儏鍐點?/p>



鍥為〉棣?/font>


緇撴潫璇?/font>

鎴戝凡緇忎粙緇嶄簡 DOM 鑳藉仛鐨勫緢澶氫簨鎯咃紝浣嗘槸 DOM錛堝拰 JavaScript錛夊彲浠ュ仛鐨勪簨鎯呰繙涓嶆榪欎簺銆備粩緇嗙爺絀躲佹彛鎽╄繖浜涗緥瀛愶紝鐪嬬湅鏄浣曚嬌鐢ㄥ畠浠潵瑙e喅鍙兘闇瑕佸鎴風鑴氭湰銆佹ā鏉挎垨涓撶敤 API 鐨勯棶棰樸?/p>

DOM 鏈夎嚜宸辯殑灞闄愭у拰緙虹偣錛屼絾鍚屾椂涔熸嫢鏈変紬澶氫紭鐐癸細瀹冨唴緗簬寰堝搴旂敤紼嬪簭涓紱鏃犺浣跨敤 Java 鎶鏈丳ython 鎴?JavaScript錛屽畠閮戒互鐩稿悓鏂瑰紡宸ヤ綔錛涘畠闈炲父渚夸簬浣跨敤 SAX錛涗嬌鐢ㄤ笂榪扮殑妯℃澘錛屽畠浣跨敤璧鋒潵鏃㈢畝媧佸張寮哄ぇ銆傝秺鏉ヨ秺澶氱殑搴旂敤紼嬪簭寮濮嬫敮鎸?DOM錛岃繖鍖呮嫭鍩轟簬 Mozilla 鐨勫簲鐢ㄧ▼搴忋丱penOffice 鍜?Blast Radius 鐨?XMetaL銆傝秺鏉ヨ秺澶氱殑瑙勮寖闇瑕?DOM錛屽茍瀵瑰畠鍔犱互鎵╁睍錛堜緥濡傦紝SVG錛夛紝鍥犳 DOM 鏃舵椂鍒誨埢灝卞湪鎮ㄧ殑韜竟銆備嬌鐢ㄨ繖縐嶈騫挎硾閮ㄧ講鐨勫伐鍏鳳紝緇濆鏄偍鐨勬槑鏅轟箣涓俱?/p>



鍥為〉棣?/font>


鍙傝冭祫鏂?

  • 鎮ㄥ彲浠ュ弬闃呮湰鏂囧湪 developerWorks 鍏ㄧ悆绔欑偣涓婄殑 鑻辨枃鍘熸枃銆?br />
  • 涓嬭澆 JavaScript 搴?/font>錛屽畠鍖呭惈浜嗕笂闈㈢殑鑴氭湰鍜屼竴涓敤浜庢祴璇曡繖浜涜剼鏈殑綆鍗?嫻嬭瘯欏甸潰銆?br />
  • 鐩存帴璁塊棶 DOM 鍙戞簮鍦?鈥斺?W3C 鐨?DOM 璧勬簮欏甸潰 錛屽叾涓寘鍚埌鎵鏈変笌鏂囨。瀵硅薄妯″瀷鐩稿叧鐨勬爣鍑嗙殑閾炬帴銆?br />
  • 鏌ョ湅 Jesse Ruderman 鐨?bookmarklets銆傝櫧鐒?Ruderman 娌℃湁鍒涢犳湳璇渂ookmarkets鈥濓紝浣嗕粬鏀墮泦浜嗗緢澶氫竴嫻佺殑銆佺畝鐭殑銆佷功絳句技鐨?JavaScript錛屼嬌鐢ㄥ畠浠紑鍙?DOM 鐨勫法澶ф綔鍔涳紝浣挎偍鐨勬祻瑙堝櫒鍙互涓烘偍甯︽潵鏇村甯姪銆?br />
  • 璁塊棶 Sjoerd Visscher 鐨?Beyond JS 搴擄紝瀹冩彁渚涗簡榪滆繙瓚呰繃鎴戝湪榪欓噷鎻愬強鐨勭敤浜庡嚱鏁板紡緙栫▼鐨勫伐鍏楓傚鏋滄偍鍙互灝嗕簨鐗╂娊璞′負鍑芥暟錛岄偅涔?JavaScript 灝嗕細鎴愪負鎮ㄥ緱蹇冨簲鎵嬬殑宸ュ叿銆?br />
  • DOM API 鐨勬爣鍑嗗弬鑰冨湪 W3C銆傝繖閲屾槸 DOM2 鍒?JavaScript 錛圗CMAScript錛夋槧灝?/font> 鐨勭綉鍧銆?br />
  • 浜嗚В AJAX 涓轟粈涔堝凡緇忓紩璧蜂簡榪欎箞澶х殑鍙嶅搷銆傚畠浣跨敤浜嗗紓姝ヨ皟鐢ㄦ潵浣挎湇鍔″櫒瀹炴椂鍗囩駭 Web 搴旂敤紼嬪簭銆傛偍鍙互浣跨敤涓婅堪鐨勮澶氭妧鏈紝騫墮槄璇?寮傛閫氫俊宸ュ叿銆?br />
  • 浜嗚В涓涓?XML 緙栬緫鍣ㄥ拰宸ュ叿鐨?XMetaL 緋誨垪錛屽畠浠兘鏀寔 DOM API銆傚畠浠敱浣滆呮墍鍦ㄧ殑鍏徃 Blast Radius 寮鍙戙?br />
  • 鍦?developerWorks 鐨?Developer Bookstore 浜嗚В鏇村 XMl 鐩稿叧鐨勪功綾嶏紝鍏朵腑鍖呮嫭 David Mertz 鐨?Text Processing in Python涓涔︺?br />
  • 浜嗚В濡備綍鎵嶈兘鎴愪負 IBM 璁よ瘉鐨?XML 鍙婄浉鍏蟲妧鏈殑寮鍙戜漢鍛?/font>銆?br />


xzc 2006-08-22 15:21 鍙戣〃璇勮
]]>
WEB鎵撳嵃澶у叏http://www.tkk7.com/xzclog/archive/2006/08/22/65079.htmlxzcxzcTue, 22 Aug 2006 07:07:00 GMThttp://www.tkk7.com/xzclog/archive/2006/08/22/65079.htmlhttp://www.tkk7.com/xzclog/comments/65079.htmlhttp://www.tkk7.com/xzclog/archive/2006/08/22/65079.html#Feedback4http://www.tkk7.com/xzclog/comments/commentRss/65079.htmlhttp://www.tkk7.com/xzclog/services/trackbacks/65079.html錛?錛?lt;script聽defer>聽
function聽SetPrintSettings()聽{聽
銆//聽--聽advanced聽features聽
銆factory.printing.SetMarginMeasure(2)聽//聽measure聽margins聽in聽inches聽
銆factory.SetPageRange(false,聽1,聽3)聽//聽need聽pages聽from聽1聽to聽3聽
銆factory.printing.printer聽=聽"HP聽DeskJet聽870C"聽
銆factory.printing.copies聽=聽2聽
銆factory.printing.collate聽=聽true聽
銆factory.printing.paperSize聽=聽"A4"聽
銆factory.printing.paperSource聽=聽"Manual聽feed"聽

銆//聽--聽basic聽features聽
銆factory.printing.header聽=聽"This聽is聽MeadCo"聽
銆factory.printing.footer聽=聽"Advanced聽Printing聽by聽scriptX"聽
銆factory.printing.portrait聽=聽false聽
銆factory.printing.leftMargin聽=聽1.0聽
銆factory.printing.topMargin聽=聽1.0聽
銆factory.printing.rightMargin聽=聽1.0聽
銆factory.printing.bottomMargin聽=聽1.0聽
}聽
</script>聽

錛?錛壜?br /><script聽language="javascript">聽
銆銆function聽printsetup(){聽
銆銆//聽鎵撳嵃欏甸潰璁劇疆聽
銆銆wb.execwb(8,1);聽
銆銆}聽
銆銆function聽printpreview(){聽
銆銆//聽鎵撳嵃欏甸潰棰勮聽
銆銆銆銆聽
銆銆wb.execwb(7,1);聽
銆銆銆銆銆聽
銆銆銆銆聽
銆銆}聽

銆銆function聽printit()聽
銆銆{聽
銆銆if聽(confirm(''紜畾鎵撳嵃鍚楋紵''))聽{聽
銆銆wb.execwb(6,6)聽
銆銆}聽
銆銆}聽
銆銆</script>聽
</head>聽
<body>聽
<OBJECT聽classid="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2"聽

height=0聽id=wb聽name=wb聽width=0></OBJECT>聽
<input聽type=button聽name=button_print聽value="鎵撳嵃"聽

onclick="javascript:printit()">聽
<input聽type=button銆name=button_setup聽value="鎵撳嵃欏甸潰璁劇疆"聽

onclick="javascript:printsetup();">聽
<input聽type=button銆name=button_show聽value="鎵撳嵃棰勮"聽

onclick="javascript:printpreview();">聽
<input聽type=button聽name=button_fh聽value="鍏抽棴"聽

onclick="javascript:window.close();">聽

------------------------------------------------聽
鍏充簬榪欎釜緇勪歡榪樻湁鍏朵粬鐨勭敤娉曪紝鍒椾婦濡備笅錛毬?br />WebBrowser.ExecWB(1,1)聽鎵撳紑聽
Web.ExecWB(2,1)聽鍏抽棴鐜板湪鎵鏈夌殑IE紿楀彛錛屽茍鎵撳紑涓涓柊紿楀彛聽
Web.ExecWB(4,1)聽淇濆瓨緗戦〉聽
Web.ExecWB(6,1)聽鎵撳嵃聽
Web.ExecWB(7,1)聽鎵撳嵃棰勮聽
Web.ExecWB(8,1)聽鎵撳嵃欏甸潰璁劇疆聽
Web.ExecWB(10,1)聽鏌ョ湅欏甸潰灞炴?br />Web.ExecWB(15,1)聽濂藉儚鏄挙閿錛屾湁寰呯‘璁ぢ?br />Web.ExecWB(17,1)聽鍏ㄩ壜?br />Web.ExecWB(22,1)聽鍒鋒柊聽
Web.ExecWB(45,1)聽鍏抽棴紿椾綋鏃犳彁紺郝?/p>

2銆佸垎欏墊墦鍗奧?br /><HTML>聽
<HEAD>聽
<STYLE>銆銆聽
銆銆P聽{page-break-after:聽always}聽
</STYLE>聽
</HEAD>聽
<BODY>聽
<%while聽not聽rs.eof%>聽
<P><%=rs(0)%></P>聽
<%rs.movenext%>聽
<%wend%>聽
</BODY>聽
</HTML>聽

3銆丄SP欏甸潰鎵撳嵃鏃跺浣曞幓鎺夐〉闈㈠簳閮ㄧ殑璺緞鍜岄《绔殑欏電爜緙栧彿聽
錛?錛塱e鐨勬枃浠?銆夐〉闈㈣緗?銆夎閲岄潰鐨勯〉鐪夊拰欏佃剼閲岄潰鐨勪笢瑗塊兘鍘繪帀錛屾墦鍗板氨涓嶅嚭鏉ヤ簡銆偮?br />錛?錛?lt;HTML>聽
<HEAD>聽
<TITLE>聽New聽Document聽</TITLE>聽
<META聽NAME="Generator"聽CONTENT="EditPlus">聽
<META聽NAME="Author"聽CONTENT="YC">聽
<script聽language="VBscript">聽
dim聽hkey_root,hkey_path,hkey_key聽
hkey_root="HKEY_CURRENT_USER"聽
hkey_path="\Software\Microsoft\Internet聽Explorer\PageSetup"聽
''//璁劇疆緗戦〉鎵撳嵃鐨勯〉鐪夐〉鑴氫負絀郝?br />function聽pagesetup_null()聽
銆銆on聽error聽resume聽next聽
銆銆Set聽RegWsh聽=聽CreateObject("Wscript.Shell")聽
銆銆hkey_key="\header"銆銆聽
銆銆RegWsh.RegWrite聽hkey_root+hkey_path+hkey_key,""聽
銆銆hkey_key="\footer"聽
銆銆RegWsh.RegWrite聽hkey_root+hkey_path+hkey_key,""聽
end聽function聽
''//璁劇疆緗戦〉鎵撳嵃鐨勯〉鐪夐〉鑴氫負榛樿鍊悸?br />function聽pagesetup_default()聽
銆銆on聽error聽resume聽next聽
銆銆Set聽RegWsh聽=聽CreateObject("Wscript.Shell")聽
銆銆hkey_key="\header"銆銆聽
銆銆RegWsh.RegWrite聽hkey_root+hkey_path+hkey_key,"&w&b欏電爜錛?amp;p/&P"聽
銆銆hkey_key="\footer"聽
銆銆RegWsh.RegWrite聽hkey_root+hkey_path+hkey_key,"&u&b&d"聽
end聽function聽
</script>聽
</HEAD>聽

<BODY>聽
<br/>聽
<br/>聽
<br/>聽
<br/>聽
<br/>聽
<br/><p聽align=center>聽
<input聽type="button"聽value="娓呯┖欏電爜"聽onclick=pagesetup_null()>聽<input聽type="button"聽value="鎭㈠欏靛悧"聽onclick=pagesetup_default()><br/>聽

</p>聽
</BODY>聽
</HTML>聽
4銆佹誕鍔ㄥ撫鎵撳嵃聽
<script聽LANGUAGE=javascript>聽
function聽button1_onclick()聽{聽
銆銆var聽odoc=window.iframe1.document;聽
銆銆var聽r=odoc.body.createTextRange();聽
銆銆var聽stxt=r.htmlText;聽
銆銆alert(stxt)聽
銆銆var聽pwin=window.open("","print");聽
銆銆pwin.document.write(stxt);聽
銆銆pwin.print();聽
}聽
</script>聽
4銆佺敤FileSystem緇勪歡瀹炵幇WEB搴旂敤涓殑鏈湴鐗瑰畾鎵撳嵃聽
<script聽Language=VBscript>聽
function聽print_onclick聽//鎵撳嵃鍑芥暟聽
dim聽label聽
label=document.printinfo.label.value聽//鑾峰緱HTML欏甸潰鐨勬暟鎹?br />set聽objfs=CreateObject("scripting.FileSystemObject")聽//鍒涘緩FileSystem緇勪歡瀵硅薄鐨勫疄渚嬄?br />set聽objprinter=objfs.CreateTextFile聽("LPT1:",true)聽//寤虹珛涓庢墦鍗版満鐨勮繛鎺ヂ?br />objprinter.Writeline("__________________________________")聽//杈撳嚭鎵撳嵃鐨勫唴瀹孤?br />objprinter.Writeline("|聽|")聽
objprinter.Writeline("|聽鎮ㄦ墦鍗扮殑鏁版嵁鏄細"&label&聽"聽|鈥?聽
objprinter.Writeline("|聽|")聽
objprinter.Writeline("|_________________________________|")聽
objprinter.close聽//鏂紑涓庢墦鍗版満鐨勮繛鎺ヂ?br />set聽objprinter=nothing聽
set聽objfs=nothing聽//聽鍏抽棴FileSystem緇勪歡瀵硅薄聽
end聽function聽
</script>聽
鏈嶅姟鍣ㄧ鑴氭湰錛毬?br /><%鈥︹︹β?br />set聽conn=server.CreateObject聽("adodb.connection")聽
conn.Open聽"DSN=name;UID=XXXX;PWD=XXXX;"聽
set聽rs=server.CreateObject("adodb.recordset")聽
rs.Open(鈥渟elect聽鈥︹︹?,conn,1,1聽
鈥︹︹?%>聽//涓庢暟鎹簱榪涜浜や簰聽
HTML欏甸潰緙栫爜錛毬?br /><HTML>聽
鈥︹︹β?br /><FORM聽ID=printinfo聽NAME="printinfo"聽>聽
<INPUT聽type="button"聽value="鎵撳嵃>>"聽id=print聽name=print聽>聽//璋冪敤鎵撳嵃鍑芥暟聽
<INPUT聽type=hidden聽id=text1聽name=label聽value=<%=鈥︹︹?>>聽//淇濆瓨鏈嶅姟鍣ㄧ浼犳潵鐨勬暟鎹?br />鈥︹︹β?br /></HTML>



xzc 2006-08-22 15:07 鍙戣〃璇勮
]]>
JAVASCRIPT涓嬌鐢―OM鎿嶄綔XML鏂囨。 http://www.tkk7.com/xzclog/archive/2006/06/22/54451.htmlxzcxzcThu, 22 Jun 2006 04:28:00 GMThttp://www.tkk7.com/xzclog/archive/2006/06/22/54451.htmlhttp://www.tkk7.com/xzclog/comments/54451.htmlhttp://www.tkk7.com/xzclog/archive/2006/06/22/54451.html#Feedback0http://www.tkk7.com/xzclog/comments/commentRss/54451.htmlhttp://www.tkk7.com/xzclog/services/trackbacks/54451.html<script聽language="JavaScript">
<!--
var聽doc聽=new聽ActiveXObject("Msxml2.DOMDocument");聽//ie5.5+,CreateObject("Microsoft.XMLDOM")聽


//鍔犺澆鏂囨。
//
doc.load("b.xml");

//鍒涘緩鏂囦歡澶?/span>
var聽p聽=聽doc.createProcessingInstruction("xml","version='1.0'聽聽encoding='gb2312'");

聽聽聽聽
//娣誨姞鏂囦歡澶?/span>
聽聽聽聽doc.appendChild(p);

//鐢ㄤ簬鐩存帴鍔犺澆鏃惰幏寰楁牴鎺ョ偣
//
var聽root聽=聽doc.documentElement;

//涓ょ鏂瑰紡鍒涘緩鏍規帴鐐?/span>
//
聽聽聽聽var聽root聽=聽doc.createElement("students");
聽聽聽聽var聽root聽=聽doc.createNode(1,"students","");

聽聽聽聽
//鍒涘緩瀛愭帴鐐?/span>
聽聽聽聽var聽n聽=聽doc.createNode(1,"ttyp","");

聽聽聽聽聽聽聽聽
//鎸囧畾瀛愭帴鐐規枃鏈?/span>
聽聽聽聽聽聽聽聽//n.text聽=聽"聽this聽is聽a聽test";
聽聽聽聽
聽聽聽聽
//鍒涘緩瀛欐帴鐐?/span>
聽聽聽聽var聽o聽=聽doc.createElement("sex");
聽聽聽聽聽聽聽聽o.text聽
="鐢?/span>";聽聽聽聽//鎸囧畾鍏舵枃鏈?/span>

聽聽聽聽
//鍒涘緩灞炴?/span>
聽聽聽聽var聽r聽=聽doc.createAttribute("id");
聽聽聽聽聽聽聽聽r.value
="test";

聽聽聽聽聽聽聽聽
//娣誨姞灞炴?/span>
聽聽聽聽聽聽聽聽n.setAttributeNode(r);

聽聽聽聽
//鍒涘緩絎簩涓睘鎬犅犅犅?/span>
聽聽聽聽var聽r1聽=聽doc.createAttribute("class");
聽聽聽聽聽聽聽聽r1.value
="tt";
聽聽聽聽聽聽聽聽
聽聽聽聽聽聽聽聽
//娣誨姞灞炴?/span>
聽聽聽聽聽聽聽聽n.setAttributeNode(r1);

聽聽聽聽聽聽聽聽
//鍒犻櫎絎簩涓睘鎬?/span>
聽聽聽聽聽聽聽聽n.removeAttribute("class");

聽聽聽聽聽聽聽聽
//娣誨姞瀛欐帴鐐?/span>
聽聽聽聽聽聽聽聽n.appendChild(o);

聽聽聽聽聽聽聽聽
//娣誨姞鏂囨湰鎺ョ偣
聽聽聽聽聽聽聽聽n.appendChild(doc.createTextNode("this聽is聽a聽text聽node."));

聽聽聽聽聽聽聽聽
//娣誨姞娉ㄩ噴
聽聽聽聽聽聽聽聽n.appendChild(doc.createComment("this聽is聽a聽comment\n"));
聽聽聽聽
聽聽聽聽聽聽聽聽
//娣誨姞瀛愭帴鐐?/span>
聽聽聽聽聽聽聽聽root.appendChild(n);
聽聽聽聽
聽聽聽聽
//澶嶅埗鎺ョ偣
聽聽聽聽var聽m聽=聽n.cloneNode(true);

聽聽聽聽聽聽聽聽root.appendChild(m);
聽聽聽聽聽聽聽聽
聽聽聽聽聽聽聽聽
//鍒犻櫎鎺ョ偣
聽聽聽聽聽聽聽聽root.removeChild(root.childNodes(0));

聽聽聽聽
//鍒涘緩鏁版嵁孌?/span>
聽聽聽聽var聽c聽=聽doc.createCDATASection("this聽is聽a聽cdata");
聽聽聽聽聽聽聽聽c.text聽
="hi,cdata";
聽聽聽聽聽聽聽聽
//娣誨姞鏁版嵁孌?/span>
聽聽聽聽聽聽聽聽root.appendChild(c);
聽聽聽聽
聽聽聽聽
//娣誨姞鏍規帴鐐?/span>
聽聽聽聽doc.appendChild(root);

聽聽聽聽
//鏌ユ壘鎺ョ偣
聽聽聽聽var聽a聽=聽doc.getElementsByTagName("ttyp");
聽聽聽聽
//var聽a聽=聽doc.selectNodes("http://ttyp");

聽聽聽聽
//鏄劇ず鏀規帴鐐圭殑灞炴?/span>
聽聽聽聽for(var聽i=0;i<a.length;i++)
聽聽聽聽
{
聽聽聽聽聽聽聽聽alert(a[i].xml);
聽聽聽聽聽聽聽聽
for(var聽j=0;j<a[i].attributes.length;j++)
聽聽聽聽聽聽聽聽
{
聽聽聽聽聽聽聽聽聽聽聽聽alert(a[i].attributes[j].name);
聽聽聽聽聽聽聽聽}

聽聽聽聽}


聽聽聽聽
//淇敼鑺傜偣,鍒╃敤XPATH瀹氫綅鑺傜偣
聽聽聽聽var聽b聽=聽doc.selectSingleNode("//ttyp/sex");
聽聽聽聽b.text聽
="濂?/span>";

聽聽聽聽
//alert(doc.xml);

聽聽聽聽
//XML淇濆瓨錛堥渶瑕佸湪鏈嶅姟绔紝瀹㈡埛绔敤FSO錛?/span>
聽聽聽聽//doc.save();
聽聽聽聽
聽聽聽聽
//鏌ョ湅鏍規帴鐐筙ML
聽聽聽聽if(n)
聽聽聽聽
{
聽聽聽聽聽聽聽聽alert(n.ownerDocument.xml);
聽聽聽聽}


//-->
</script>

7.4銆佹枃妗e璞℃ā鍨嬶紙DOM錛?br />銆銆鏂囨。瀵硅薄妯″瀷錛圖OM錛夋槸琛ㄧず鏂囨。錛堟瘮濡侶TML鍜孹ML錛夊拰璁塊棶銆佹搷浣滄瀯鎴愭枃妗g殑鍚勭鍏冪礌鐨勫簲鐢ㄧ▼搴忔帴鍙o紙API錛夈備竴鑸殑錛屾敮鎸丣avascript鐨勬墍鏈夋祻瑙堝櫒閮芥敮鎸丏OM銆傛湰鏂囨墍娑夊強鐨凞OM錛屾槸鎸嘩3C瀹氫箟鐨勬爣鍑嗙殑鏂囨。瀵硅薄妯″瀷錛屽畠浠ユ爲褰㈢粨鏋勮〃紺篐TML鍜孹ML鏂囨。錛屽畾涔変簡閬嶅巻榪欎釜鏍戝拰媯鏌ャ佷慨鏀規爲鐨勮妭鐐圭殑鏂規硶鍜屽睘鎬с?br />
7.4.1銆丏OM鐪間腑鐨凥TML鏂囨。錛氭爲
銆銆鍦―OM鐪間腑錛孒TML璺焁ML涓鏍鋒槸涓縐嶆爲褰㈢粨鏋勭殑鏂囨。錛?lt;html>鏄牴錛坮oot錛夎妭鐐癸紝<head>銆?lt;title>銆?lt;body>鏄?lt;html>鐨勫瓙錛坈hildren錛夎妭鐐癸紝浜掔浉涔嬮棿鏄厔寮燂紙sibling錛夎妭鐐癸紱<body>涓嬮潰鎵嶆槸瀛愯妭鐐?lt;table>銆?lt;span>銆?lt;p>絳夌瓑銆傚涓嬪浘錛?

銆銆

銆銆榪欎釜鏄笉鏄窡XML鐨勭粨鏋勬湁鐐圭浉浼煎憿銆備笉鍚岀殑鏄紝HTML鏂囨。鐨勬爲褰富瑕佸寘鍚〃紺哄厓绱犮佹爣璁扮殑鑺傜偣鍜岃〃紺烘枃鏈覆鐨勮妭鐐廣?/p>7.4.2銆丠TML鏂囨。鐨勮妭鐐?br />銆銆DOM涓嬶紝HTML鏂囨。鍚勪釜鑺傜偣琚涓哄悇縐嶇被鍨嬬殑Node瀵硅薄銆傛瘡涓狽ode瀵硅薄閮芥湁鑷繁鐨勫睘鎬у拰鏂規硶錛屽埄鐢ㄨ繖浜涘睘鎬у拰鏂規硶鍙互閬嶅巻鏁翠釜鏂囨。鏍戙傜敱浜嶩TML鏂囨。鐨勫鏉傛э紝DOM瀹氫箟浜唍odeType鏉ヨ〃紺鴻妭鐐圭殑綾誨瀷銆傝繖閲屽垪鍑篘ode甯哥敤鐨勫嚑縐嶈妭鐐圭被鍨嬶細
鎺ュ彛nodeType甯擱噺nodeType鍊?/td>澶囨敞
ElementNode.ELEMENT_NODE1鍏冪礌鑺傜偣
TextNode.TEXT_NODE3鏂囨湰鑺傜偣
DocumentNode.DOCUMENT_NODE9document
CommentNode.COMMENT_NODE8娉ㄩ噴鐨勬枃鏈?/td>
DocumentFragmentNode.DOCUMENT_FRAGMENT_NODE11document鐗囨柇
AttrNode.ATTRIBUTE_NODE2鑺傜偣灞炴?/td>

銆銆DOM鏍戠殑鏍硅妭鐐規槸涓狣ocument瀵硅薄錛岃瀵硅薄鐨刣ocumentElement灞炴у紩鐢ㄨ〃紺烘枃妗f牴鍏冪礌鐨凟lement瀵硅薄錛堝浜嶩TML鏂囨。錛岃繖涓氨鏄?lt;html>鏍囪錛夈侸avascript鎿嶄綔HTML鏂囨。鐨勬椂鍊欙紝document鍗蟲寚鍚戞暣涓枃妗o紝<body>銆?lt;table>絳夎妭鐐圭被鍨嬪嵆涓篍lement銆侰omment綾誨瀷鐨勮妭鐐瑰垯鏄寚鏂囨。鐨勬敞閲娿傚叿浣撹妭鐐圭被鍨嬬殑鍚箟錛岃鍙傝冦奐avascript鏉冨▉鎸囧崡銆嬶紝鍦ㄦ涓嶈禈榪般?/p>

銆銆Document瀹氫箟鐨勬柟娉曞ぇ澶氭暟鏄敓浜у瀷鏂規硶錛屼富瑕佺敤浜庡垱寤哄彲浠ユ彃鍏ユ枃妗d腑鐨勫悇縐嶇被鍨嬬殑鑺傜偣銆傚父鐢ㄧ殑Document鏂規硶鏈夛細

鏂規硶鎻忚堪
createAttribute()鐢ㄦ寚瀹氱殑鍚嶅瓧鍒涘緩鏂扮殑Attr鑺傜偣銆?/td>
createComment()鐢ㄦ寚瀹氱殑瀛楃涓插垱寤烘柊鐨凜omment鑺傜偣銆?/td>
createElement()鐢ㄦ寚瀹氱殑鏍囪鍚嶅垱寤烘柊鐨凟lement鑺傜偣銆?/td>
createTextNode()鐢ㄦ寚瀹氱殑鏂囨湰鍒涘緩鏂扮殑TextNode鑺傜偣銆?/td>
getElementById()榪斿洖鏂囨。涓叿鏈夋寚瀹歩d灞炴х殑Element鑺傜偣銆?/td>
getElementsByTagName()榪斿洖鏂囨。涓叿鏈夋寚瀹氭爣璁板悕鐨勬墍鏈塃lement鑺傜偣銆?/td>

銆銆瀵逛簬Element鑺傜偣錛屽彲浠ラ氳繃璋冪敤getAttribute()銆乻etAttribute()銆乺emoveAttribute()鏂規硶鏉ユ煡璇€佽緗垨鑰呭垹闄や竴涓狤lement鑺傜偣鐨勬ц川錛屾瘮濡?lt;table>鏍囪鐨刡order灞炴с備笅闈㈠垪鍑篍lement甯哥敤鐨勫睘鎬э細

灞炴?/td>鎻忚堪
tagName鍏冪礌鐨勬爣璁板悕縐幫紝姣斿<p>鍏冪礌涓篜銆侶TML鏂囨。榪斿洖鐨則abName鍧囦負澶у啓銆?/td>

銆銆Element甯哥敤鐨勬柟娉曪細

鏂規硶鎻忚堪
getAttribute()浠ュ瓧絎︿覆褰㈠紡榪斿洖鎸囧畾灞炴х殑鍊箋?/td>
getAttributeNode()浠ttr鑺傜偣鐨勫艦寮忚繑鍥炴寚瀹氬睘鎬х殑鍊箋?/td>
getElementsByTabName()榪斿洖涓涓狽ode鏁扮粍錛屽寘鍚叿鏈夋寚瀹氭爣璁板悕鐨勬墍鏈塃lement鑺傜偣鐨勫瓙瀛欒妭鐐癸紝鍏墮『搴忎負鍦ㄦ枃妗d腑鍑虹幇鐨勯『搴忋?/td>
hasAttribute()濡傛灉璇ュ厓绱犲叿鏈夋寚瀹氬悕瀛楃殑灞炴э紝鍒欒繑鍥瀟rue銆?/td>
removeAttribute()浠庡厓绱犱腑鍒犻櫎鎸囧畾鐨勫睘鎬с?/td>
removeAttributeNode()浠庡厓绱犵殑灞炴у垪琛ㄤ腑鍒犻櫎鎸囧畾鐨凙ttr鑺傜偣銆?/td>
setAttribute()鎶婃寚瀹氱殑灞炴ц緗負鎸囧畾鐨勫瓧絎︿覆鍊鹼紝濡傛灉璇ュ睘鎬т笉瀛樺湪鍒欐坊鍔犱竴涓柊灞炴с?/td>
setAttributeNode()鎶婃寚瀹氱殑Attr鑺傜偣娣誨姞鍒拌鍏冪礌鐨勫睘鎬у垪琛ㄤ腑銆?/td>

銆銆Attr瀵硅薄浠h〃鏂囨。鍏冪礌鐨勫睘鎬э紝鏈塶ame銆乿alue絳夊睘鎬э紝鍙互閫氳繃Node鎺ュ彛鐨刟ttributes灞炴ф垨鑰呰皟鐢‥lement鎺ュ彛鐨刧etAttributeNode()鏂規硶鏉ヨ幏鍙栥備笉榪囷紝鍦ㄥぇ澶氭暟鎯呭喌涓嬶紝浣跨敤Element鍏冪礌灞炴х殑鏈綆鍗曟柟娉曟槸getAttribute()鍜宻etAttribute()涓や釜鏂規硶錛岃屼笉鏄疉ttr瀵硅薄銆?

7.4.3銆佷嬌鐢―OM鎿嶄綔HTML鏂囨。
銆銆Node瀵硅薄瀹氫箟浜嗕竴緋誨垪灞炴у拰鏂規硶錛屾潵鏂逛究閬嶅巻鏁翠釜鏂囨。銆傜敤parentNode灞炴у拰childNodes[]鏁扮粍鍙互鍦ㄦ枃妗f爲涓笂涓嬬Щ鍔紱閫氳繃閬嶅巻childNodes[]鏁扮粍鎴栬呬嬌鐢╢irstChild鍜宯extSibling灞炴ц繘琛屽驚鐜搷浣滐紝涔熷彲浠ヤ嬌鐢╨astChild鍜宲reviousSibling榪涜閫嗗悜寰幆鎿嶄綔錛屼篃鍙互鏋氫婦鎸囧畾鑺傜偣鐨勫瓙鑺傜偣銆傝岃皟鐢╝ppendChild()銆乮nsertBefore()銆乺emoveChild()銆乺eplaceChild()鏂規硶鍙互鏀瑰彉涓涓妭鐐圭殑瀛愯妭鐐逛粠鑰屾敼鍙樻枃妗f爲銆?

銆銆闇瑕佹寚鍑虹殑鏄紝childNodes[]鐨勫煎疄闄呬笂鏄竴涓狽odeList瀵硅薄銆傚洜姝わ紝鍙互閫氳繃閬嶅巻childNodes[]鏁扮粍鐨勬瘡涓厓绱狅紝鏉ユ灇涓句竴涓粰瀹氳妭鐐圭殑鎵鏈夊瓙鑺傜偣錛涢氳繃閫掑綊錛屽彲浠ユ灇涓炬爲涓殑鎵鏈夎妭鐐廣備笅琛ㄥ垪鍑轟簡Node瀵硅薄鐨勪竴浜涘父鐢ㄥ睘鎬у拰鏂規硶錛?/p>

銆銆Node瀵硅薄甯哥敤灞炴э細

灞炴?/td>鎻忚堪
attributes濡傛灉璇ヨ妭鐐規槸涓涓狤lement錛屽垯浠amedNodeMap褰㈠紡榪斿洖璇ュ厓绱犵殑灞炴с?/td>
childNodes浠ode[]鐨勫艦寮忓瓨鏀懼綋鍓嶈妭鐐圭殑瀛愯妭鐐廣傚鏋滄病鏈夊瓙鑺傜偣錛屽垯榪斿洖絀烘暟緇勩?/td>
firstChild浠ode鐨勫艦寮忚繑鍥炲綋鍓嶈妭鐐圭殑絎竴涓瓙鑺傜偣銆傚鏋滄病鏈夊瓙鑺傜偣錛屽垯涓簄ull銆?/td>
lastChild浠ode鐨勫艦寮忚繑鍥炲綋鍓嶈妭鐐圭殑鏈鍚庝竴涓瓙鑺傜偣銆傚鏋滄病鏈夊瓙鑺傜偣錛屽垯涓簄ull銆?/td>
nextSibling浠ode鐨勫艦寮忚繑鍥炲綋鍓嶈妭鐐圭殑鍏勫紵涓嬩竴涓妭鐐廣傚鏋滄病鏈夎繖鏍風殑鑺傜偣錛屽垯榪斿洖null銆?/td>
nodeName鑺傜偣鐨勫悕瀛楋紝Element鑺傜偣鍒欎唬琛‥lement鐨勬爣璁板悕縐般?/td>
nodeType浠h〃鑺傜偣鐨勭被鍨嬨?/td>
parentNode浠ode鐨勫艦寮忚繑鍥炲綋鍓嶈妭鐐圭殑鐖惰妭鐐廣傚鏋滄病鏈夌埗鑺傜偣錛屽垯涓簄ull銆?/td>
previousSibling浠ode鐨勫艦寮忚繑鍥炵揣鎸ㄥ綋鍓嶈妭鐐廣佷綅浜庡畠涔嬪墠鐨勫厔寮熻妭鐐廣傚鏋滄病鏈夎繖鏍風殑鑺傜偣錛屽垯榪斿洖null銆?/td>

銆銆Node瀵硅薄甯哥敤鏂規硶錛?/p>
鏂規硶鎻忚堪
appendChild()閫氳繃鎶婁竴涓妭鐐瑰鍔犲埌褰撳墠鑺傜偣鐨刢hildNodes[]緇勶紝緇欐枃妗f爲澧炲姞鑺傜偣銆?/td>
cloneNode()澶嶅埗褰撳墠鑺傜偣錛屾垨鑰呭鍒跺綋鍓嶈妭鐐逛互鍙婂畠鐨勬墍鏈夊瓙瀛欒妭鐐廣?/td>
hasChildNodes()濡傛灉褰撳墠鑺傜偣鎷ユ湁瀛愯妭鐐癸紝鍒欏皢榪斿洖true銆?/td>
insertBefore()緇欐枃妗f爲鎻掑叆涓涓妭鐐癸紝浣嶇疆鍦ㄥ綋鍓嶈妭鐐圭殑鎸囧畾瀛愯妭鐐逛箣鍓嶃傚鏋滆鑺傜偣宸茬粡瀛樺湪錛屽垯鍒犻櫎涔嬪啀鎻掑叆鍒板畠鐨勪綅緗?/td>
removeChild()浠庢枃妗f爲涓垹闄ゅ茍榪斿洖鎸囧畾鐨勫瓙鑺傜偣銆?/td>
replaceChild()浠庢枃妗f爲涓垹闄ゅ茍榪斿洖鎸囧畾鐨勫瓙鑺傜偣錛岀敤鍙︿竴涓妭鐐規浛鎹㈠畠銆?/td>

銆銆鎺ヤ笅鏉ワ紝璁╂垜浠嬌鐢ㄤ笂榪扮殑DOM搴旂敤緙栫▼鎺ュ彛錛屾潵璇曠潃鎿嶄綔HTML鏂囨。銆?/p>

xzc 2006-06-22 12:28 鍙戣〃璇勮
]]>
AJAX寮鍙戠畝鐣?/title><link>http://www.tkk7.com/xzclog/archive/2006/06/22/54448.html</link><dc:creator>xzc</dc:creator><author>xzc</author><pubDate>Thu, 22 Jun 2006 04:23:00 GMT</pubDate><guid>http://www.tkk7.com/xzclog/archive/2006/06/22/54448.html</guid><wfw:comment>http://www.tkk7.com/xzclog/comments/54448.html</wfw:comment><comments>http://www.tkk7.com/xzclog/archive/2006/06/22/54448.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.tkk7.com/xzclog/comments/commentRss/54448.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/xzclog/services/trackbacks/54448.html</trackback:ping><description><![CDATA[ <a href="/eamoi/archive/2005/10/31/17489.aspx">http://www.tkk7.com/eamoi/archive/2005/10/31/17489.aspx</a> <br /> <br /> <img src ="http://www.tkk7.com/xzclog/aggbug/54448.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/xzclog/" target="_blank">xzc</a> 2006-06-22 12:23 <a href="http://www.tkk7.com/xzclog/archive/2006/06/22/54448.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>寮鍙戣法嫻忚鍣ㄧ殑JavaScripthttp://www.tkk7.com/xzclog/archive/2006/06/21/54365.htmlxzcxzcWed, 21 Jun 2006 13:55:00 GMThttp://www.tkk7.com/xzclog/archive/2006/06/21/54365.htmlhttp://www.tkk7.com/xzclog/comments/54365.htmlhttp://www.tkk7.com/xzclog/archive/2006/06/21/54365.html#Feedback0http://www.tkk7.com/xzclog/comments/commentRss/54365.htmlhttp://www.tkk7.com/xzclog/services/trackbacks/54365.html1鍚戣〃涓拷鍔犺
2閫氳繃JAVASCRIPT璁劇疆鍏冪礌鐨勬牱寮?br />3璁劇疆鍏冪礌鐨凜LASS灞炴?br />4鍒涘緩杈撳叆鍏冪礌
5鍚戣緭鍏ュ厓绱犲鍔犱簨浠跺鐞嗙▼搴?br />6鍒涘緩鍗曢夋寜閽?
  1. 1.
  2. <table id="MyTable>
  3. <tbody id="MyTableBody"></tbody>
  4. </table>
  5. var cell = documentcreateElement("td").appendChild(document.createTextNode("foo"));
  6. var row = document.createElement("tr").appendChild(cell);
  7. document.getElementById("MyTableBoyd").appendChild(row);
  8. 2.
  9. var spanElement = document.getElementById("myspan");
  10. //spanElement.setAttribute("style","font-weight:bold;color:red");
  11. spanElement.style.cssText="font-weight:bold;color:red";
  12. 3.
  13. element.setAttribute("class","stylename");//闈濱E
  14. element.setAttribute("className","stylename");//IE
  15. 4.
  16. var button = document.createElement("input");
  17. button.setAttribute("type","button");
  18. document.getElementById("form").appendChild(button);
  19. 5.
  20. var element = document.getElementById("ee");
  21. element.onclick=function(){todo();};
  22. 6.
  23. var ration = document.createElement("<input type='radio' name='radioa' value='checked'>);//ie
  24. vat radion = document.createElement("input");
  25. radion .setAttribute("type","radio");
  26. radion.setAttribute("name","radionsss");
  27. radion.setAttribute("value","checked");


xzc 2006-06-21 21:55 鍙戣〃璇勮
]]>
主站蜘蛛池模板: 国产精品亚洲精品日韩动图| 222www免费视频| 国产成人精品日本亚洲网站| 中文字幕亚洲免费无线观看日本 | 国产无限免费观看黄网站| 久久久久亚洲av无码尤物| 毛片免费观看网址| 三上悠亚电影全集免费| 亚洲午夜在线播放| 亚洲精品国产品国语在线 | 国产成人A亚洲精V品无码| 久久笫一福利免费导航| ssswww日本免费网站片| 亚洲va成无码人在线观看| 国产精品亚洲美女久久久| 又黄又爽又成人免费视频| 久久久久久久国产免费看| 亚洲国产综合精品中文第一| 国产亚洲精品美女久久久| 在线观看免费精品国产| 最近中文字幕高清免费中文字幕mv | 日韩伦理片电影在线免费观看| 无码av免费一区二区三区| 免费的黄网站男人的天堂| 亚洲一区二区三区国产精品无码| 亚洲色欲久久久久综合网| 午夜神器成在线人成在线人免费| 外国成人网在线观看免费视频| 美女扒开屁股让男人桶爽免费| 亚洲香蕉在线观看| 亚洲va久久久噜噜噜久久男同| 国产一区二区三区在线观看免费 | 一级毛片人与动免费观看| 亚洲偷自精品三十六区| 亚洲精品在线观看视频| 在线观看午夜亚洲一区| 免费在线观看理论片| 精品剧情v国产在免费线观看| 免费看黄视频网站| 蜜桃AV无码免费看永久| 十八禁无码免费网站|