我正在使用Cordova构建一个html5手机应用程序,在几个页面中我使用一个表作为按钮。在每个页面中,除了一个之外,这没有问题,但在一个页面上onclick事件不会触发
这是表格的HTML
<div id="buttonHolder" class="MiniButtonGridHolder">
<table id="AddButton" class="ButtonGrid" >
<tr>
<td>
<p id="AddLink" class="clickableLinks">Add</p>
</td>
</tr>
</table>
</div>
以下是用于设置onlick事件的JavaScript
function SetButton()
{
console.log("next one");
var CurrentTable = document.getElementById("AddButton");
console.log($(CurrentTable).attr('id'));
CurrentTable.onclick = function () {
Console.log("set");
AddWorkItem();
};
console.log("NOW SET");
}
AddWorkItem函数
function AddWorkItem()
{
console.log("Started");
}
当我运行这段代码时,除了单击按钮时执行的两个(IE Set and Started)之外,所有console.log都有效。 Jquery甚至可以获得正确的表ID。
我确信解决方案会让我因为没有看到它而自责,但此刻我花了大约3个小时试图查看我的错误,并且无法找到任何结果。
任何人都可以看到我的错误吗?
修改的
我在这里调用此代码
$(document).on('pagecontainershow', function (event,ui) {
SetButton();
}
我在这里复制了这个问题: http://jsfiddle.net/p4bR9/2/
答案 0 :(得分:1)
您需要致电SetButton()
而console
不是Console
答案 1 :(得分:0)
嗯,您的按钮无法点击,直到onclick
事件侦听器添加到其中。在您的SetButton()
函数运行之前,这不会被添加。在您发布的代码中,它无法运行。
尝试:
$(document).ready(function(){
SetButton();
});
答案 2 :(得分:0)
$('#AddButton').on('click',function()
{
alert("check");
});
答案 3 :(得分:0)
我不确定我明白了。但试图改变这个
Console.log("set");
在
console.log("set");
并使用事件onlick="SetButton();"