为什么 Sharepoint 在执行 javascript 函数后会自行刷新?
Why Sharepoint refresh it self after a javascript function was executed?
我在内容编辑器中创建了一个按钮,它可以更改例如内容框的背景颜色。
按下按钮后,背景颜色从黑色变为白色。但是 Sharepoint 会自动刷新它并且没有保存更改。有人对此有想法吗?它也发生在 IE 和 Chrome 中。
此致,
安迪
<button onclick="changeCo()">Change Color</button>
<style>
#contentBox {
background-Color:black;
}
</style><script>
function changeCo(){
var elem = document.getElementById("contentBox");
var theCSSprop = window.getComputedStyle(elem,null).getPropertyValue("background-color");
if (theCSSprop == 'rgb(0, 0, 0)') {
document.getElementById('contentBox').style.backgroundColor = 'white';
}else{
document.getElementById('contentBox').style.backgroundColor = 'black';
}
}
</script>
只需将 type='button'
添加到您的按钮元素。这应该可以防止页面重新加载。
<button type='button' onclick="changeCo()">Change Color</button>
但是 @Scott Marcus
建议的另一件事是,如果您想在页面 refresh/reload 之后保留更改,那么您必须将这些更改存储到 server/cookies/localStorage。
我在内容编辑器中创建了一个按钮,它可以更改例如内容框的背景颜色。
按下按钮后,背景颜色从黑色变为白色。但是 Sharepoint 会自动刷新它并且没有保存更改。有人对此有想法吗?它也发生在 IE 和 Chrome 中。
此致,
安迪
<button onclick="changeCo()">Change Color</button>
<style>
#contentBox {
background-Color:black;
}
</style><script>
function changeCo(){
var elem = document.getElementById("contentBox");
var theCSSprop = window.getComputedStyle(elem,null).getPropertyValue("background-color");
if (theCSSprop == 'rgb(0, 0, 0)') {
document.getElementById('contentBox').style.backgroundColor = 'white';
}else{
document.getElementById('contentBox').style.backgroundColor = 'black';
}
}
</script>
只需将 type='button'
添加到您的按钮元素。这应该可以防止页面重新加载。
<button type='button' onclick="changeCo()">Change Color</button>
但是 @Scott Marcus
建议的另一件事是,如果您想在页面 refresh/reload 之后保留更改,那么您必须将这些更改存储到 server/cookies/localStorage。