0

クラスとIDが取得される状況がありますが、jQueryで変数を渡す必要があります。どのようにお勧めしますか?

HTML

<input
    type="text"
    id="cannot_change_this"
    class="rather_not_append_extra_classes_just_for_a_variable"
    value="Full Text Name"
    hash="ABCDE">

オートコンプリートを介して選択された各値には、関連付けられたハッシュがあります。上記の例では、値は である可能性がありますがFull Text Name、これは一意ではありません。本当に渡す必要があるのは hash:ABCDEです。

ID を変更することはできず、余分なクラスを追加したくないので、スタイルに使用されるクラスを除外してハッシュを取得する必要があります。そして、それinputは .text() も使用できません。

他にどのようにABCDEハッシュをjQueryに渡すことができますか?

4

4 に答える 4

2

jQueryのデータメソッドの使い方を見てください

http://api.jquery.com/jQuery.data/

JavaScript で値のハッシュを計算し、それを入力のデータに設定できます。

また、HTML5 を使用している場合は、HTML でデータ属性を明確に宣言できます。したがって、プロパティを使用しdata-hash=HASHてデータを設定できます。

または、コンプライアンスを気にしない場合、または HTML5 を使用していない可能性がある場合は、次のように独自の属性を設定できます。

<input type="text" id="cannot_change_this"
class="rather_not_append_extra_classes_just_for_a_variable" 
value="Full Text Name" hash="ABCDE" />

そして、次のように jQuery で読み取ります。

var hash = $('input#idOfInput').attr('hash');
于 2012-08-10T18:26:41.047 に答える
1

title属性を使用できます。

<input type="text" id="cannot_change_this"
class="rather_not_append_extra_classes_just_for_a_variable" 
value="Full Text Name"title="ABCDE" />

これは、すべての入力の標準属性です。

于 2012-08-10T18:32:01.500 に答える
1

私がそれを正しく理解した場合。

値の設定:

$("#cannot_change_this").data("hash", hashValue);

後で値を取得する:

$("#cannot_change_this").data("hash");
于 2012-08-10T18:27:28.283 に答える
0

あなたは次のようなものを持つことができます:

jQuery(document).ready(function(){
//SET:
 jQuery("#cannot_change_this").attr("new-value", "ABCDE");
//READ:
 var val = jQuery("#cannot_change_this").attr("new-value");
 alert(val);
 });
于 2012-08-10T18:32:38.630 に答える