我正在尝试在使用 JQuery 移动的网络应用程序中使用 javascript 更新一些 HTML。
由于某种原因,我无法使用 innerHTML
属性来创建 JQuery Mobile 按钮。
例如:
document.getElementById('someDiv').innerHTML = document.getElementById('someDiv').innerHTML + '<p><em>' + var1 + '</em>:<br />' + var2+'</p>';
工作正常并且样式正确,但是:
document.getElementById('someDiv').innerHTML = document.getElementById('someDiv').innerHTML + '<a href="#" onclick="appendButton()" data-role="button">' + var1 + '</a>';
没有。我应该说someDiv
包含在 <div data-role="controlgroup">
内如果这会有什么不同的话。此外,页面上的其他按钮也可以正常工作。
为什么这不起作用?我怎样才能使它起作用?
编辑:我正在使用 PhoneGap 将其编译为 native 应用程序(如果这有任何区别的话)...
最佳答案
您需要触发 pageCreate 事件,以便 jQuery Mobile 知道重新设置您刚刚添加的元素的样式。
$("#someDiv").trigger("create")
关于Javascript 函数innerHTML 样式不正确,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11549809/