我一直在与JavaScript一起使用Ajax。所有这些调用都是通过鼠标悬停在特定文本上进行的。鼠标悬停显示在状态栏底部调用的JavaScript方法。我在一些网站上看到这完全被蒙蔽了。在状态栏没有显示。
是否可以在JavaScript中这样做,而不使用类似于jQuery的框架?
下面给出了示例代码。
JavaScript码
<script language="javascript">
function doAjaxSearch()
{
//1. Get the Input value
var inputTxt = document.getElementById('inputTxt').value;
//2. Get XMLHttpRequest (XHR)
var xhttp = getXMLHttpRequest(); //separate method gives a 'xhttpr'
var url = "getTasks";
var params = "input="+inputTxt;
var httpMethod = 'GET';
xhttp.onreadystatechange = function()
{
if(xhttp.readyState==4 && xhttp.status==200)
{
console.log(xhttp.responseText);
//prepare the response
prepareOutput(xhttp.responseText);
}
};
xhttp.open(httpMethod, url+"?"+params, true);
xhttp.send();
}
</script>
HTML代码
//rest of the code omitted for brevity..
<input type=text name="inputTxt" id="inputTxt" size=20/>
<a href="javascript:doAjaxSearch()">Search</a>
我总是可以看到状态栏的左下角显示文本"javascript:doAjaxSearch()“。
我希望将此显示隐藏在浏览器的状态栏中,即普通的JavaScript本身中。任何帮助都将不胜感激。
发布于 2016-01-21 11:16:45
将事件侦听器添加到javascript元素上时,在状态栏上悬停时不会显示消息:
function searchEventHandler(ev)
{
// do something
}
el.addEventListener('click', searchEventHandler);
,如有必要,可以在下列情况下删除:
el.removeEventListener('click', searchEventHandler);
编辑: Credit to RDeving,用于改进删除事件处理程序。
更新:您可以看到状态消息,因为您正在使用<a>
标记来调用javascript函数。将其更改为<span>
,并添加如上所述的事件处理程序以执行单击事件。
<script>
function searchEventHandler(ev)
{
// do something
}
var search = document.getElementById('search');
search.addEventListener('click', searchEventHandler);
</script>
<span id='search' style='cursor: pointer;'>Search</span>
https://stackoverflow.com/questions/34922200
复制相似问题