0

我正在尝试使用 javascript 使动态文本链接:

<div class="container">

<div class="form-current">
  <form>
    <h2 style="margin-left:10px" ><a href='#' onclick="homePage()" id="h2Current" ></a></h2>
    <div id="node-current"></div>
  </form>
</div>

这是 html,文本是通过 javascript 函数从数据库加载的:

var h2Current = document.getElementById('h2Current');
h2Current.innerHTML = 'Day '+data[0]['day'];

参数“data”是一个简单的 Json。文本正确显示下划线,但无法单击。

提前致谢

4

2 回答 2

0

问题不在于 JSON,因为您说它出现并正确下划线。问题是您在“onclick”事件期间实际上没有调用“homePage”函数,或者“homePage”函数的代码中有未处理的异常。以下是调试此问题的方法。

您需要在 Chrome 中打开您的网站,然后打开开发者工具“F12”。单击“Sources”选项卡,找到您的 .JS 文件或页面文件,如果它包含内联函数“homePage”。您可能需要打开“文件导航器”。如果是这种情况,请单击“元素”选项卡正下方的“框中的箭头”。

打开文件后,找到函数声明“homePage”并在第一个非 var 声明行处设置断点。现在,只需单击链接并逐步完成该功能。您可能会发现根本没有调用该函数,甚至可能会看到列出的 JS 异常。解决代码中内联出现的任何异常。如果你真的到达你的函数,单步执行每一行,'F11',包括任何嵌套函数,直到你找到异常。

于 2013-09-10T14:44:25.103 回答
0

您需要检查您的 JSON。检查我写的 JSON 是否正确。检查您的 JSON 格式。您可以使用 jsonlint.com 来验证您尝试使用的 JSON。

<html>
<head>
</head>
<body>
<div class="container">

<div class="form-current">
  <form>
    <h2 style="margin-left:10px" ><a href='#' onclick="homePage()" id="h2Current" ></a></h2>
    <div id="node-current"></div>
  </form>
</div>
</div>
<script>
var data =  [{ 'day':'monday'},{ 'day':'tuesday'}]

var h2Current = document.getElementById('h2Current');
h2Current.innerHTML = data[0]['day'];
</script>
</body>
于 2013-09-10T14:49:25.050 回答