Javascript ID触发器在innerHTML中不工作
我有一个div ID,可以触发一些javascript。它在innerHTML之外工作得很好,但是当我尝试只在单击div ID时触发它(在innerHTML中),它不会触发 守则:Javascript ID触发器在innerHTML中不工作,javascript,css,Javascript,Css,我有一个div ID,可以触发一些javascript。它在innerHTML之外工作得很好,但是当我尝试只在单击div ID时触发它(在innerHTML中),它不会触发 守则: <script type="text/javascript"> function ChangeStyle() { document.getElementById("p1").innerHTML = "<div id='12345' class='button next'
<script type="text/javascript">
function ChangeStyle()
{
document.getElementById("p1").innerHTML =
"<div id='12345' class='button next' class='move next'><a href=\"javascript:void()\">CONFIRM </a></div>";
}
</script>
<span id="p1">
<div class="button"><a href="javascript:void()" onclick="ChangeStyle();alert('hello');">CONFIRM </a></div></a>
</span>
函数ChangeStyle()
{
document.getElementById(“p1”).innerHTML=
"";
}
如果您只想添加一个类,那么您可以使用
$('div .button).addClass('next');
如果您只想添加一个类,那么您可以使用
$('div .button).addClass('next');
添加
类
属性两次,一个值将始终覆盖另一个值。将它们合并到一个属性中,您的代码将正常工作:
但是,如果您只想更改类,那么可以设置元素的className
属性
div.className = 'button next move';
添加
类
属性两次,一个值将始终覆盖另一个值。将它们合并到一个属性中,您的代码将正常工作:
但是,如果您只想更改类,那么可以设置元素的className
属性
div.className = 'button next move';
将
javascript:void()
更改为javascript:void(0)
上面的
class
参数也正确。将javascript:void()
更改为javascript:void(0)
上面的
类
参数也正确。这不是一个jQuery问题。这不是一个jQuery问题。上面的代码在JSFIDLE上对我有效。(是的,我已经删除了javascript:void()
并添加了return:false
,但那只是因为这是一个坏习惯)。@HenrikAmmer从什么时候开始是javascript:void()
坏习惯@ianpgall,这个问题是2008年的。。。阅读并阅读《为什么您的
将
作为其内部HTML
》的最后一行
是一个内联元素,
是一个块级元素。我改为,但我的id仍然不会触发javascript。上面的代码在JSFIDLE上对我有效。(是的,我已经删除了javascript:void()
并添加了return:false
,但那只是因为这是一个坏习惯)。@HenrikAmmer从什么时候开始是javascript:void()
坏习惯@ianpgall,这个问题是2008年的。。。阅读并阅读《为什么您的
将
作为其内部HTML
》的最后一行
是一个内联元素,
是一个块级元素。我更改为,但我的id仍然不会触发javascript。我的类不是问题,不触发它的是我的“id”。如果复制innerHTML中的相同html,并将其放在innerHTML代码之外,然后按正常方式发布,则会触发javascript。但是在innerHTML内部它不会触发。我的类不是问题,不触发它是我的“id”。如果复制innerHTML中的相同html,并将其放在innerHTML代码之外,然后按正常方式发布,则会触发javascript。但在innerHTML内部,它不会触发。