ホームページ  >  記事  >  ウェブフロントエンド  >  jquery_jquery の名前空間を使用した XML データの処理

jquery_jquery の名前空間を使用した XML データの処理

WBOY
WBOYオリジナル
2016-05-16 18:06:031023ブラウズ

しかし、残念なことに、多くのサービスから返されるデータは依然として XML 形式です。
jquery には XML などのデータ処理のサポートが組み込まれており、これに関しては問題ありません。ただし、返されるデータには名前空間が存在しないことが前提となります。たとえば、次のデータ

コードをコピー コードは次のとおりです。



<従業員 id="1" firstName="ares" lastName="chen"> ;
<従業員 id="1" firstName="ares" lastName="chen">
<従業員 id="1" firstName="ares" lastName="chen" >< /従業員>
<従業員 id="1" firstName="ares" lastName="chen">
<従業員 id="1" firstName="ares " lastName=" chen">
<従業員 id="1" firstName="ares" lastName="chen">
<従業員 id=" 1" firstName= "ares" lastName="chen">
<従業員 id="1" firstName="ares" lastName="chen">

このようなデータを処理するための jquery コードは次のとおりです
コードをコピーします コードは次のとおりです:

var div = $("#placeholder");
// 名前空間なしで xml を処理します
$.get("data.xml", null, function (data) {
varemployees = $("Employee", data) //すべての従業員ノードを検索します
var = $("
    "); .each(function ( ) {
    $("
  • ").text($(this).attr("firstName") " " $(this).attr("lastName")). appendTo(ul); // データの各行に新しい li タグを作成し、ul
    ul.appendTo(div)>});
    ただし、XML データに名前空間がある場合、上記のコードは無効になります。その理由は、jquery がデフォルトでは名前空間



を処理できないためです。コード





🎜>



この問題を解決するために、一部の熱心なネットユーザーは、jquery.xmlns.js という jquery プラグインを作成しました。興味がある場合は、次の

http://www からダウンロードしてください。 rfk.id.au/blog/entry/xmlns-selectors-jquery/

次に、次の方法を使用して問題を解決できます



コピーコード
コードは次のとおりです。

$.xmlns["d"] = "http://tech.xizhang.com"; // 名前空間を持つ XML を処理します $.get("datawithnamespace.xml", null , function (data) { varemployee = $("d|Employee", data); //すべての Employee ノードを検索しますvar ul = $("

XML 技術仕様の名前空間は、実際には非常に悪い設計であると言わざるを得ません。それはもたらす以上に、さらに多くの問題を追加します。
この記事の例の完全なコードは次のとおりです
コードをコピーします コードは次のとおりです:

<% @ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="WebApplication1.WebForm1" %>








html>



最後にブラウザで見た効果は以下の通りです。写真と真実があります




声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
前の記事:jQuery_jquery の .bind()、.live()、および .delegate() の違いの分析次の記事:jQuery_jquery の .bind()、.live()、および .delegate() の違いの分析

関連記事

続きを見る