Javascript 如何将字符串值绑定到<;李>-标记,作为隐藏参数?
我正在从我不管理的数据库中提取数据。它是一个单独的列表,重要的值是:Javascript 如何将字符串值绑定到<;李>-标记,作为隐藏参数?,javascript,jquery,html,html-lists,uid,Javascript,Jquery,Html,Html Lists,Uid,我正在从我不管理的数据库中提取数据。它是一个单独的列表,重要的值是: 文件夹名 索引Integer UID(唯一标识)String 文件名 我已经成功地创建了一个树状结构的浏览器,基于使用和标记的模型。我还实现了双击操作侦听器,它找到了id,并相应地执行了操作。标识被存储,并作为表示叶子或文件名的单个的值-参数找到 然而,事实证明索引编号不是唯一的。尽管有一列是关于UID的,我还是希望它们是这样。我试图将值设置为UID字符串。它在我的浏览器中工作,如我生成的HTML代码片段所示: <l
- 文件夹名
- 索引
Integer
- UID(唯一标识)
String
- 文件名
和
标记的模型。我还实现了双击操作侦听器,它找到了id,并相应地执行了操作。标识被存储,并作为表示叶子或文件名的单个的值-参数找到
然而,事实证明索引编号不是唯一的。尽管有一列是关于UID
的,我还是希望它们是这样。我试图将值
设置为UID字符串
。它在我的浏览器中工作,如我生成的HTML代码片段所示:
<li role="treeitem" value="1581f20c-0ef9-4c21-a8ab-a407da310cf5" ... >
然而,当我检索该值并将其保存到数据库时,它只获取出现在第一个非数字字符前面的数值。在这个例子中是1581。我检查过了,得出的结论是value参数只接受数字值,这对我来说真的很糟糕
是否有其他方法将未显示的UID字符串绑定到HTML列表元素
编辑2:
我删除了以前的编辑,因为我意识到我的误解是什么。自定义数据标记需要语法“data variablename”,在检索它时,我应该输入“data-”,然后只获取variablename。元素的属性是一个序数值,专门用于
上下文(即编号列表)
相反,您可以将此信息作为数据项添加:
<li role="treeitem" data-value="abc-foo-bar" ...>
另见:
jQuery为每个元素添加一个特殊属性,该属性唯一地标识“保留”内存中包含数据的对象,因此您不必担心覆盖元素本身的任何内容。value
已经是一个html属性。因此,当您使用浏览器时,它会尝试修复您的值。尝试使用自定义属性,如数据值
:
<li role="treeitem" data-value="1581f20c-0ef9-4c21-a8ab-a407da310cf5" ... >
试试这个:
HTML:
jQ:
$(“li”).data(“uid”)代码>您可以使用jQuery函数
$(element).data(key, value)
您不能创建自定义的数据标记吗?$(li).data(“value”,$value字符串)代码>?如果您的客户端都使用最新的浏览器,您可以尝试使用“数据”属性。例如:哇,答案太多了,而且很快!我不知道在HTML中定义自定义数据标记的选项,我非常高兴了解它们。我需要使它与IE8兼容,所以在制定解决方案并接受答案之前,我会先了解它的支持情况。我决定接受这个答案,因为它的格式简短、简单但具体,而且解释清楚。此外,它使用JQuery,我暗示我是通过标记使用JQuery的。如果我是正确的,这意味着它将与更多的浏览器,然后一些其他的答案,这需要HTML-5。应该$(el)是$(li)吗?我试图使用这个$(el).data('value'),也尝试了$.el.data('value')都返回了错误。@mcvel
在本例中代表引用的元素;它只是代码中的一个变量。
$(element).data(key, value)