Javascript Can';t使用JS Ajax启用禁用的提交(提交由php响应)

Javascript Can';t使用JS Ajax启用禁用的提交(提交由php响应),javascript,php,ajax,disabled-input,Javascript,Php,Ajax,Disabled Input,我什么都试过了: document.getElementById('buy').setAttribute('disabled','false'); document.getElementById('buy').setAttribute('disabled',false); document.getElementById('buy').removeAttribute('disabled'); document.getElementById('buy').disabled=false; 输入提交之

我什么都试过了:

document.getElementById('buy').setAttribute('disabled','false');
document.getElementById('buy').setAttribute('disabled',false);
document.getElementById('buy').removeAttribute('disabled');
document.getElementById('buy').disabled=false;
输入提交之前已由php响应:

if (empty($basketproductos)) {
echo "<input type='submit' name='buy' value='Buy' disabled='disabled' id='buy'/>";
            }
if(空($basketproductos)){
回声“;
}

还尝试使用disabled='true'而不是disabled='disabled'。

如果要禁用该按钮,应为
禁用属性设置
true

document.getElementById('buy').disabled = true;

正如@Titus(在评论中)所说,在执行语句之前,确保元素已添加到DOM中。

也许您的js是在html之前执行的,这应该可以:

document.addEventListener('DOMContentLoaded', function(){

  var buyButton = document.getElementById('buy');
buyButton.disabled = false; //or true

}, false);


var buyButton=document.getElementById('buy');
buyButton.disabled=false//还是真的

此处的功能示例:

在执行这些语句之前,确保元素已添加到DOM中。我如何检查?您可以看到Hmmm的示例,但据我所知,这是关于如何记录.ready、onload等的,但是我的js文件是在我的HTML之后加载的,不管怎么说,dis禁用功能来自最近单击的按钮……我明白了,在这种情况下,问题是其他的,因为其中一些语句应该启用输入。查看您的浏览器控制台,看看是否有错误。仍然不工作,似乎php根本不只是将内容添加到DOM中。@Rajo您确定empty($basketproductos)是真的吗?试试if(true)intead of if(empty($basketproductos))当然:(我想我可以让它下沉,因为它是一个可疑但有效的解决方案。@Rajo我添加了一个jsfiddle,但问题可能是phpThanks,它似乎可以自己工作,但似乎PHP正在做一些奇怪的事情……非常感谢。
<form action="">
<input type='submit' name='buy' value='Buy' disabled='false' id='buy'/>
  </form>
  <script>    
  var buyButton = document.getElementById('buy');
buyButton.disabled = false; //or true
  </script>