ID触发器在innerHTML中不起作用

时间:2012-09-19 14:20:30

标签: javascript css

我有一个触发一些javascript的div ID。它在innerHTML之外工作正常,但是当我尝试仅在单击div ID时触发它(在innerHTML中)它不会触发。

代码:

<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>

3 个答案:

答案 0 :(得分:3)

您要添加class属性两次,一个值将始终覆盖另一个。将它们合并为一个属性,您的代码将正常工作:

Demo

但是,如果您只想更改类,则可以设置元素的className属性。

div.className = 'button next move';

Demo

答案 1 :(得分:2)

将您的javascript:void()更改为javascript:void(0)

上述class参数也是正确的。

答案 2 :(得分:-1)

如果你要做的只是添加一个类,那么你可以使用

$('div .button).addClass('next');