如何显示弹出窗口以在使用纯 JavaScript 从 Web 服务器获取/请求数据时禁用搜索按钮
how to display popup to disable the search button while fetching/requesting data from the web server using Pure JavaScript?
我有这个页面:
<div>
<label id="lblchecked"></label>
<input id="ipt_search" type="search" title="Search" />
<button id="btn_search" onclick="loadXMLDoc();"> Search</button>
</div>
<div id="response">
<table id="tbl"></table>
</div>
<div id="openModal" class="modalDialog" style="display:none;">
<div>
<h2>Please wait .......... </h2>
</div>
</div>
.js文件中,我从服务器获取数据如下:
function loadXMLDoc() {
document.getElementById("openModal").style.display = "block";
var Searchtxt= document.getElementById("ipt_search").value;
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function () {
if (xhttp.readyState == 4 && xhttp.status == 200) {
var myArr = JSON.parse(xhttp.responseText);
myFunction(myArr);
}
};
xhttp.open("GET", "https://test.com/"+Searchtxt, true);
xhttp.send();
}
我想让openModel
弹出窗口在获取服务器数据时出现,并在加载数据后再次关闭它。
在香草JavaScript中。
一旦 ajax 请求完成,您需要稍微修改我们的 onreadystatechange
事件处理程序以隐藏您的 modalDialog
div。
function loadXMLDoc() {
var openModal = document.getElementById("openModal")
var Searchtxt = document.getElementById("ipt_search").value;
// show modal
openModal.style.display = "block";
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function () {
if (xhttp.readyState === 4) {
// http request completed
if (xhttp.status === 200) {
// successful
var myArr = JSON.parse(xhttp.responseText);
myFunction(myArr);
}
// hide modal, successful or not
openModal.style.display = 'none';
}
};
xhttp.open("GET", "https://test.com/"+Searchtxt, true);
xhttp.send();
};
此示例将在请求完成后关闭modalDialog
,但仅在请求成功时调用myFunction()
。
相关文章:
- 使用c#中的邮件附件javascript在客户端机器上获取服务器端导出的crystal报告路径.下面的
- 使用PHP或Javascript获取服务器状态
- 尝试获取服务器响应
- 以特定时区的javascript获取服务器时间
- 使用javascript ASP.NET获取服务器控件上的子控件
- 可以´t从对象XMLHttpRequest获取服务器响应
- jQuery侦听器以获取服务器更新
- 如果我使用html表单(而不是ajax),则获取服务器的响应代码或返回值
- 是否可以将 Apache 配置为允许浏览器中的 JS 获取服务器目录内容
- 无法使用 asp.net 获取服务器端的javascript返回的国家/地区名称
- 如何使用 Web 表单(不是 MVC 或 asmx 页面)从 ajax Http POST 获取 c# 服务器端的复选框
- 如何获取服务器时间并每秒更新
- 内置JavaScript / Greasemonkey函数来获取服务器时间
- 如何在客户端获取服务器删除/更新收集项的 ID
- 通过 Java 脚本获取服务器控件属性值
- 如何获取服务器的当前日期时间
- 如何在客户端Node.js中获取服务器错误消息
- 如何使用javascript获取服务器时间
- 通过select2-x-editable获取服务器端php输出
- 如何使用javascript获取服务器上文件的日期