【问题标题】:How do I save article ids in Javascript or HTML?如何在 Javascript 或 HTML 中保存文章 ID?
【发布时间】:2014-06-27 06:54:19
【问题描述】:

我在网页中有一个链接列表,用户可以点击并评论它们。我通过 JSON 加载链接,每个链接都由一个 id 唯一标识。

我的问题是我怎么知道哪个链接被点击了?即使我有一个 id,我在哪里存储它(如果是 Javascript 对象,如何?)?我想我不能将它作为标签属性,因为用户可能会更改它。

【问题讨论】:

  • 我尝试将 id 设置为链接的 div,但我担心用户可能会更改它。
  • 请粘贴您尝试过的 html 或 jquery 代码
  • 给我们一个 jsFiddle 的代码!

标签: javascript jquery html json jquery-ui


【解决方案1】:

听起来您希望能够创建指向具有特定 ID 的页面的链接,而不实际显示该 ID?如果是这种情况,我认为您将以简单的方式这样做会遇到困难,因为 javascript 客户端和用户很可能无论如何都能够更改 id。我建议将 ID 保留在链接中(例如<a href="url.com/post/42>),而是在加载页面时以某种方式检查提供的 URL 是否实际上是有效的现有 ID。

【讨论】:

    【解决方案2】:

    您可以使用对最终用户隐藏的数据属性。

    例如:<a id="link1" data-myuniqueid="XXXXX"> Link1 </a>

    使用Javascript,您可以访问/修改数据值

    var ele = document.getElementById("link1");
    var uid = ele.getAttribute('data-myuniqueid'); // For compatibility
    var uid = ele.dataset.myuniqueid;  // HTML5 way - does not work in old browsers
    

    如果您需要更多关于使用自定义数据属性的说明,this 可能会有所帮助。

    -- 编辑--

    我想以上答案不足以解决您的问题。您可以将对象存储在数据属性中或尝试类似的方法 -

    var ele = document.getElementById("link1");
    ele.myuniqueid = "XXXXXX"
    

    myuniqueid 即使在源代码中也不会对用户可见。

    【讨论】:

      【解决方案3】:

      您可以将其添加为标签属性 - 发送到浏览器的任何内容,用户都可以更改。如果用户想要更改 id - 让他去做。他也可以点击他想评论的文章,​​也可以这样做。

      【讨论】:

      • 用户更改它的问题是我可能会去更新不同链接的评论。
      • 那么你有一个安全问题,不能通过混淆 id 存储来解决。您必须确定用户创建了评论。例如强制他注册以评论文章,并检查当前登录的用户是否是评论的所有者。
      【解决方案4】:

      您可以使用所有浏览器都支持的 HTML5 中的 sessionStorage。如果页面重新加载,它也可以保留

      //for setting value 
      sessionStorage.LinkClicked= "4";
      
      //to get the value
      var temp = sessionStorage.LinkClicked;
      

      这里是更多信息的链接http://www.w3schools.com/html/html5_webstorage.asp

      希望对您有所帮助。祝你今天过得愉快。 :)

      【讨论】:

      • 旧版浏览器不支持本地存储,所以有点问题。
      • 是的,这是个问题。 :|
      【解决方案5】:

      用于在客户端存储数据。 如果您对跨浏览器兼容性不挑剔,您可以使用 html5 灵魂,例如本地存储。

      http://html5sql.com/

      http://diveintohtml5.info/storage.html

      如果您希望从元素中获取 id 并使用 jQuery,您可以在事件处理程序中使用它

      $().attr('id'); 
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2014-04-13
        • 2012-01-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-04-19
        • 2022-12-10
        • 1970-01-01
        相关资源
        最近更新 更多