1

私がこのようなものを持っている場合:

<span stylecode="123456789" class="punctis-social-widget"></span>

javascript(jqueryではなく)を使用してスタイルコード値を取得するにはどうすればよいですか?また、スパンでカスタムフィールドを使用することは有効ですか?

注:フィールドスタイルコードが存在しない場合があるため、関数の結果がnullになる可能性があります。

4

4 に答える 4

3

カスタム属性を使用することは無効です。値を保存する必要がある場合は、HTML5data属性の使用を検討してください。

<span id="item1" data-stylecode="123456789" class="punctis-social-widget"></span>

次に、JSを使用してそれをフェッチします。

<script>
    var element = document.getElementById('item1');  // You could use class
    var sDataValue = element.getAttribute('data-stylecode');  //123456789
</script>

jQueryのフェッチ値の場合:

$('item1').data('stylecode');  //123456789
于 2013-03-27T13:34:50.530 に答える
2

スパン要素を選択できる場合は、次のようにするだけです。

spanElem.getAttribute('stylecode');

属性が存在しない場合は、getAttribute()単にまたはnullを返し''ます(ブラウザによって異なるようです)。

IDがあれば選択が簡単になります。その場合は、を使用できますdocument.getElementById('id');。それ以外の場合はdocument.getElementsByClassName('punctis-social-widget')、新しい標準準拠のブラウザーで使用するか、document.getElementsByTagName('span');それらを使用してループし、classNameプロパティを検査できます。

Matthewが述べたように、カスタム属性は無効です(ただし、通常は問題は発生しません)が、HTML 5を使用している場合は、HTML5をデータ属性に変換すると有効になります。

于 2013-03-27T13:35:21.507 に答える
1

このようなカスタム属性を使用することはお勧めできませんが、次のようにこのタスクを実行できます。

var apan = document.getElementsByTagName('span');
var code = span[0].getAttribute('stylecode');
console.log(code);

属性を使用しdataます。

于 2013-03-27T13:36:35.060 に答える
1

私は属性の値をキャッチする方法を知っています:

var span = document.getElementsByTagName("span");
var stylecode = span.getAttribute("stylecode");

しかし、私はあなたの質問の2番目の部分について知りません。ごめん。

于 2013-03-27T13:36:46.447 に答える