问题背景
为了让按钮在传入特定值后失效,js代码如下
function editCount(cartItemId,buyCount){
var but = document.getElementById("downBut");
window.location.href = "cart.do?operator=editCartItem&cartItemId=" + cartItemId + "&buyCount=" + buyCount;
if(buyCount == 0){
alert("if");
but.setAttribute('disabled','已设置');
alert("设置结束")
}else{
alert("else");
but.removeAttribute('disabled');
}
}
其中对应请求的方法为:
public String editCartItem(Integer cartItemId,Integer buyCount){
cartItemService.editCartItem(cartItemId,buyCount);
return "redirect:cart.do?operator=index";
}
回到的是同一个经过thymeleaf渲染的cart.html文件
将
window.location.href = "cart.do?operator=editCartItem&cartItemId=" + cartItemId + "&buyCount=" + buyCount;
注释后,按钮能被正确地disabled,无法点击
但是,没被注释的话,按钮就是变灰一下之后又能点击,表现出来的感觉就是disabled只生效了一小段时间,感觉和重定向有很大关系,待验证。