【问题标题】:How to evaluate if a data exist in the browser?如何评估浏览器中是否存在数据?
【发布时间】:2016-12-14 22:14:41
【问题描述】:

我有以下代码在浏览器上每列打印一个项目。

我想做的是在另一个页面中单击按钮时检查是否在页面中找到该项目的任何实例。

打印项目的页面

<html>

<head>
  <title> <%= title %></title>
</head>

<body>
  <table>
    <% for(var i=0; i< rows.length; i++) { %>
      <tr>
        <% for(var f=0; f< fields.length; f++) { %>
        <td>
          <%= rows[i][fields[f].name] %>
        </td>
        <% } %>
      </tr>
      <% } %>

  </table>
</body>

</html>

应检查该页面中是否存在项目的代码

$("#checkHashtag").click(function() {
    var hashtag = document.getElementById("codeInput").value;
// Check to see if user enter hashtag exist in that page
if(hashtag == ....**(thats where i need help)**

});

提前致谢

下面是数据页 我想检查单击按钮后该页面上是否存在该数据的任何实例

【问题讨论】:

  • 你必须更清楚?是否要检查表格中是否有任何 TR 或 TD 输出?
  • 您的代码不会生成 ID 为 codeInput 甚至 checkHashtag 的元素 - 所以您从一开始就是在打一场失败的战斗
  • 我已经在我的初始帖子中添加了更新

标签: javascript jquery html node.js ejs


【解决方案1】:

好的,根据您上面的 cmets,如果您尝试检查哈希是否在您当前所在页面上的 DOM 中,您可以执行以下操作:

$("#checkHashtag").click(function() {
    var hashtag = document.getElementById("codeInput").value;
if(hashtag) {
  var cells = $('td');
  cells.each(function() {
  if($(this).text() == hash) {
    console.log('foo'); // Do something if hash is found
  }

});

如果您需要访问多个页面的值列表,那么将它们存储在 DOM 中并不是最佳策略。您可以创建一个端点以通过 ajax 请求获取值,或者更简单、不太优雅的解决方案是使用您的模板将您需要的值放在每个页面的脚本标签中,这样您就可以简单地访问客户端。

<script>
  var hashes = [1234, 1235, 1236];
</script>

【讨论】:

【解决方案2】:

如果var hashtag = document.getElementById("codeInput").value; 中有一个值,则它的值可能评估为真。所以你可以简单地做:

if(hashtag) {
    // do something
}

【讨论】:

  • @John 您的初始帖子不完整。它不包括 ID 为“codeInput”的元素。
  • 好吧,简单地把具有 id 的元素只是用户输入的输入字段,然后当他们点击按钮时,我试图在另一个页面上查看让我们说 /hashtag如果存在此项目的实例
  • 当用户单击按钮时,您要检查另一个页面中的值吗?
  • 正确的先生,在 /hashtag 页面中的所有数据都在那里,我正在尝试查看用户输入的内容是否与这些数据中的任何一个匹配
  • 在“其他”页面中,您将运行上面提供的代码。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-04-03
  • 2014-05-01
  • 2011-04-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-04-03
相关资源
最近更新 更多