按钮function仅适用于第一次单击

我试图通过多次点击获得一个按钮,以便在每次点击时更改向用户显示的内容,但该按钮仅在第一次点击时起作用。

我有一种预感,它要么与Ajax有关,要么每次点击按钮时都会绘制按钮。

我可以validationgetData.php在第一次点击时是否正常工作。

按钮的HTML:

 

按钮的Jquery函数:

 document.getElementById('search').addEventListener('click', function (e) { var info1= document.getElementById("dataInput").value; var div = document.getElementById("contentDisplay"); //removes the current data that is displaying while( div.hasChildNodes() ){ div.removeChild(div.lastChild); } var midHTML; $.ajax({ async: false, type: 'POST', url: 'getData.php', data: {key: "Search", info: info1}, success: function(data) { if(data.length > 10){ div.innerHTML = HTML+data; } else { div.innerHTML = "No data"; } } }); }); 

快速,丑陋,未经测试

 document.getElementById('search').addEventListener('click', clickForTheButton); function clickForTheButton(){ var info1= document.getElementById("dataInput").value; var div = document.getElementById("contentDisplay"); //removes the current data that is displaying while( div.hasChildNodes() ){ div.removeChild(div.lastChild); } var midHTML; $.ajax({ async: false, type: 'POST', url: 'getData.php', data: {key: "Search", info: info1}, success: function(data) { if(data.length > 10){ div.innerHTML = HTML+data; } else { div.innerHTML = "No data"; } document.getElementById('search').addEventListener('click', clickForTheButton); } }); } 

您需要从该节点中删除DOM的默认function。 您可以通过添加event.defaultPrevent();$.ajax()之前行或return false;$.ajax()