jQueryの構文解析RSSなど名前空間要素<内容:エンコードされました>
-
21-09-2019 - |
質問
私はRSSフィードを解析するためにjQueryを使用しています。各<item>
の中で、私が選択したい<content:encoded>
のような名前空間の要素です。どのように私はjQueryの中でそれを選択しますか?
$(xml).find('item') works but $(xml).find('item content') does not.
解決
あなたは、Ajax経由でXMLをロードしていますか?その後、サーバは「text / xmlで」とない「text / htmlの」のようにコンテンツタイプを設定していることを確認します。
また、あなたがしたい要素のタグ名が実際にコンテンツではなく(:エンコードされたコンテンツなど)何か他のことを確認してください。その場合は試してみてください。
.find('item content\\:encoded')?
以下のような特殊文字:jQueryのセレクタでエスケープする必要がある。
他のヒント
私はこのスレッドはかなり古いですが、それはjQueryを使って、このを検索するときにグーグルで起動します最初の1であると認識します。検索を行うための最も簡単な方法はである:
.find('[nodeName="content:encoded"]')
誰かに役立ちます願っています。私は、これらのタグにアクセスするための簡単な方法を把握しようと最後の数時間を費やしています。
それはChromeと一部の古いブラウザで細かい作業を行い.find('[nodeName="content:encoded"]')
ます。
これは、私が検索から得たものである。
jQueryのセレクタではありません 名前空間を意識したので、彼らはのみ使用 getElementsByTagNameの(というより 取得するためのgetElementsByTagNameNS) そのnodeName属性によって要素 (というよりローカル名によると、 名前空間URI)。
あなたはdocument.getElementsByTagNameNS(namespace, tagname)