0

オブジェクトとしてではなく、文字列リテラルとして jQuery セレクターを使用したいと考えています。

これはJSで可能ですか?

マークアップ

    <levelTwo>
        <head0>
            <something></something>
        </head0>
    </levelTwo>

JS

 var jamie = $('something').parent();

 //Desired useage
 typeOf(jamie) 
 // String
 console.info(jamie); 
 //"head0"
4

2 に答える 2

1
$('something').parent().prop("tagName").toLowerCase()

次を定義することもできます.toString()

http://jsfiddle.net/Rq6Kz/

$.fn.toString = function() {
      return this[0] ? this[0].nodeName.toLowerCase() : "";
};

console.info($("div").toString()); //"div"

これは、アラートなどの一部のコンテキストで暗黙的に呼び出されます。

alert($("div")); //alerts "div"

http://jsfiddle.net/Rq6Kz/1/

于 2013-02-28T12:24:02.307 に答える
0

XML で jQuery を使用しようとすると、少しトリッキーになります。jQuery セレクターから DOM 要素にアクセスするには、"[0]" を使用できます。

//<head0 name="head1">text</head0>
$(element)[0].getAttribute('name');
//result head1
$(element)[0].innerHTML();
//result "text"
$(element)[0].valueOf();
//results <head0 name="head1">
$(element)[0].nodeName.toLowerCase();
//results head0

jQuery http://api.jquery.com/jQuery.parseXML/からの parseXML も必要になる場合があります。

于 2013-02-28T12:39:37.883 に答える