Javascript 除了类、id和文本之外,我还可以如何在jQuery中的元素内传递变量?

Javascript 除了类、id和文本之外,我还可以如何在jQuery中的元素内传递变量?,javascript,jquery,html,ajax,variables,Javascript,Jquery,Html,Ajax,Variables,我有一个使用class和id的情况,但我需要在jQuery中传递一个变量。你推荐什么 HTML 通过自动完成选择时,每个值都有一个关联的哈希。在上面的示例中,值可能是全文名称,但这不是唯一的。我真正需要传递的是散列:ABCDE 我不能更改id,我不想添加额外的类,而必须过滤掉用于样式的类以获得哈希。因为它是一个输入,所以我也不能使用.text() 还有什么方法可以将ABCDE散列传递给jQuery?看看如何使用jQuery的数据方法 您可以在javascript中计算该值的哈希值,然后将其

我有一个使用class和id的情况,但我需要在jQuery中传递一个变量。你推荐什么

HTML


通过自动完成选择时,每个值都有一个关联的哈希。在上面的示例中,值可能是
全文名称
,但这不是唯一的。我真正需要传递的是散列:
ABCDE

我不能更改id,我不想添加额外的类,而必须过滤掉用于样式的类以获得哈希。因为它是一个
输入
,所以我也不能使用.text()


还有什么方法可以将
ABCDE
散列传递给jQuery?

看看如何使用jQuery的数据方法

您可以在javascript中计算该值的哈希值,然后将其设置为输入的数据

如果使用HTML5,还可以在HTML中明确声明数据属性。因此,您可以使用类似于
data hash=hash
的属性来设置数据

或者,如果您不关心comliance,或者您没有使用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的数据方法

您可以在javascript中计算该值的哈希值,然后将其设置为输入的数据

如果使用HTML5,还可以在HTML中明确声明数据属性。因此,您可以使用类似于
data hash=hash
的属性来设置数据

或者,如果您不关心comliance,或者您没有使用HTML5,您可以将自己的属性设置为

<input type="text" id="cannot_change_this"
class="rather_not_append_extra_classes_just_for_a_variable" 
value="Full Text Name" hash="ABCDE" />
如果我没弄错的话

设置值:

$("#cannot_change_this").data("hash", hashValue);
稍后获取值:

$("#cannot_change_this").data("hash");
如果我没弄错的话

设置值:

$("#cannot_change_this").data("hash", hashValue);
稍后获取值:

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

您可以只使用title属性:

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


它是所有输入的标准属性。

您可以使用title属性:

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


它是所有输入的标准属性。

您可以有如下内容:

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);
 });

您可以选择以下内容:

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);
 });

请显示哈希结构。它实际上更接近于一段值(全文名称),但它是唯一的值,无法从该值派生,因为它可能类似于
full-text-name-2
。哦。因此,您需要计算数据并将其输入到源输出中,而不是通过javascript进行设置?你应该看看我在下面的回答中提到的HTML5数据属性。然后,如果您不关心是否遵从,只需将自己的属性(如
hash=hash
)添加到元素中,并从jQuery中读取它,如
$('input#id')。attr('hash')
请显示哈希结构。它实际上更接近于值的一小部分(全文名),但是它是一个唯一的值,不能从该值派生,因为它也可能类似于
full-text-name-2
。因此,您需要计算数据并将其输入到源输出中,而不是通过javascript进行设置?你应该看看我在下面的回答中提到的HTML5数据属性。然后,如果您不关心遵从性,只需将自己的属性(如
hash=hash
)添加到元素中,并从jQuery读取它,如
$('input#id').attr('hash')
如果您不需要为其他问题(如可访问性)使用标题,那么在输入标记上会是什么样子?在输入标记上会是什么样子?类似于:类似于:如果您不需要为其他问题(如可访问性)定义“hash”属性,那么这可能是一个更好的解决方案如果您不需要为其他问题(如可访问性)使用标题,并且不使用HTML5,那么这可能是比我提到的定义“哈希”属性更好的解决方案。