0

以下のように、このxmlフィードがあります。

<GSP VER="3.2">
    <TM>0</TM>
    <Q>blue&blue</Q>
    <PARAM name="output" value="xml_no_dtd" original_value="xml_no_dtd"/> 
    <PARAM name="q" value="blue&blue" original_value="blue%26blue"/>
</GSP>

次に、このxmlフィードを反復処理する次のjqueryがあります。

var queryresults = $(data).find("GSP").find("PARAM[q]");
var query = "";

$(queryresults).each(function() {
    query = $(this).attr('original_value').text();
    alert(query);
}); 

しかし、私は何の利益も得ていないようです。どのようにして特定の属性を持つ特定の要素を選択し、次に二次属性を選択しますか。例えば

"<PARAM>"WITH attribute =を選択"name"し、value=を取得します"original_value"

結果:

query=blue%26blue
4

4 に答える 4

1

query=期待される出力の一部がどこから来るのかわかりませんが、それ以外の場合blue%26blueは、上記から文字列を取得します。

var originalValue = $('param[name="q"]').attr('original_value');

参考文献:

于 2012-06-10T00:53:12.787 に答える
1

複数の属性で選択するには:

$('param[name="whatever"][value="whatever2"]')

于 2012-06-10T00:55:34.923 に答える
1

コードを次のように調整します。

var queryresults = $(data).find("GSP").find("PARAM[name=q]");
var query = "";

$(queryresults).each(function() {
    query = $(this).attr('value');
    alert(query);
});

.attr() 関数はすでにその属性の値を返しているため、.text() 関数でやろうとしていたことは必要ありませんでした。

また、名前に基づいて要素を検索するには、次を使用できます。

$("PARAM[name=q]")

これは、他の属性でも機能します。

参考資料: http://api.jquery.com/attribute-equals-selector/

于 2012-06-10T00:58:36.450 に答える
0

これを試して:

var queryresults = $("GSP").find("PARAM[name='q']"); // try it using "data"
var query = "";
$(queryresults).each(function() {
  query = $(this).attr('original_value');
  alert(query)
}); 

http://jsfiddle.net/jHtg4/

于 2012-06-10T01:03:48.283 に答える