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')都返回了错误。@mcv
    el
    在本例中代表引用的元素;它只是代码中的一个变量。
    $(element).data(key, value)