0

我有一个简单的形式,在 jsfiddle 中我进一步简化了:

https://jsfiddle.net/mvw1nt5L/

基本上我有一个只有标题行的表格。在它上面我有一个“添加”按钮,每次单击它时都应该在表格中添加一行。

我的按钮元素是...

<button id="addMeeting" type="button" onclick="addMeeting();" > Add A Meeting </button>

并且相关的 JS 函数很简单

function addMeeting() {
alert("add button clicked");
return false;
}

真实,真实简单!但它不起作用。JS 代码作为脚本标记直接包含在 html 文档中。

我究竟做错了什么?TIA 寻求帮助!

格斯

4

2 回答 2

1

这是表单上的元素 ID 和函数名称之间的冲突。或者也许与其说是冲突,不如说是范围界定问题。老实说,在我尝试解决您的问题之前,我以前从未遇到过这种情况。很奇怪。这里有一个更详细的解释:

为什么 JS 函数名与元素 ID 冲突?

于 2019-02-28T19:15:55.827 回答
0

似乎这是一个加载和范围问题。如果您在 html 之前放置一个脚本标签,它将正常工作:

<script>
function addMeeting() {
      alert("add button clicked");
      return false;
    }
</script>
    <button id="addMeeting" type="button" onclick="addMeeting()"> Add A Meeting </button>

或者,您也可以显式使用 window 对象:

window.addMeeting = function() {
      alert("add button clicked");
      return false;
    }

和:

<button id="addMeeting5" type="button" onclick="window.addMeeting();"> Add A Meeting </button>
于 2019-02-28T19:18:43.430 回答