2

現在、CRM2011をUR12にアップグレードする準備を進めており、アップグレード後に破損する可能性のあるJavaScriptがいくつかあります。

XML関連の関数は、潜在的なコードとして強調表示されている関数の一部です。したがって、これらの関数を同等のJQueryに置き換えたいのですが、jQueryについてはあまり理解していません。

'result'がxmlhttprequestからのXML応答であると仮定すると、次のコードをjqueryを使用するように変換するにはどうすればよいですか。

result.selectNodes("//EntityMetadata/DisplayName/LocLabels/LocLabel/Label");

のようなものになります

$(result).find(("//EntityMetadata/DisplayName/LocLabels/LocLabel/Label");
4

2 に答える 2

0

jQueryはかつて基本的なXPathをサポートしていたようです。しかし、これはもはや当てはまらないようです。JavaScriptでのクロスブラウザーXPathの実装がおもしろいと思うかもしれません。

また、結果がXMLである必要はありません。XMLHttpRequestテキスト、JSON、バイナリデータなどである可能性があります。

于 2013-02-28T06:50:55.810 に答える
0

これはjQueryに関する質問を考慮に入れていませんが、CRMSDKで説明されている方法を示しています。

JavaScriptのベストプラクティスの記事をご覧ください。この記事は、selectNodeの互換性のある実装が示されているサンプルにリンクしています

function _selectNodes(node, XPathExpression) {
  if (typeof (node.selectNodes) != "undefined") {
   return node.selectNodes(XPathExpression);
  }
  else {
   var output = [];
   var XPathResults = node.evaluate(XPathExpression, node, _NSResolver, XPathResult.ANY_TYPE, null);
   var result = XPathResults.iterateNext();
   while (result) {
    output.push(result);
    result = XPathResults.iterateNext();
   }
   return output;
  }
 };
于 2013-02-28T13:03:04.457 に答える