我有一个显示属性列表的页面(即房屋)。此列表使用CSS组成。所以我构建了第二个CSS类,它使属性/房屋在2列中正确对齐。到目前为止,我通过按下按钮,回发并输出不同的html(基本相同,但与其他Css类引用)来完成此操作。
现在我在SO上找到this question,我实现了一个基本场景。将类“黄色”的div写入html页面,按钮将此类更改为“红色”。发生这种情况,但div立即变回“黄色”类。
我是JS的初学者,但不是初学程序员。这对我的网站来说是一个很好的补充,但我找不到合适的答案。如果这个问题多余,我道歉。
<script type="text/javascript">
function changeView() {
document.getElementById("box").className = " red";
}
Grtz,先谢谢Christophe,
答案 0 :(得分:3)
默认情况下,按钮元素的类型为“提交” - 这将导致您的浏览器回发到服务器。
请尝试将类型更改为按钮。
<input type="button" ....
有关这方面差异的更多信息...... Difference between <input type='button' /> and <input type='submit' />
答案 1 :(得分:1)
如果你的按钮导致回发(可能是带有asp:
标签的服务器控件),你所做的javascript更改将会丢失,因为默认情况下asp按钮会向服务器提交一个页面,结果你的页面重新加载。
如果您需要更改div
的类,请将其设为简单的html按钮,如
<input type="button" onclick="changeView()" value="Change" />