我正在尝试进行 AJAX 调用以将一些 JSON 发布到我的 Elasticsearch 实例。无论如何我可以在“数据”请求中使用全局变量值吗?
像下面这样的东西?
$(document).ready(function() {
$('#Log-submit').on('click', function(e) {
e.preventDefault();
var btn = $(e.target);
btn.attr("disabled", "disabled"); // disable button
$.ajax({
data: JSON.stringify({"name" : "#div.Name"}), //use global variable value in JSON POST request
dataType: 'json',
processData: false,
type: 'POST',
contentType: "application/json; charset=utf-8",
url: 'http://my-API.com:9200/escalations/'
});
});
});
最佳答案
根据您在评论中的描述,您似乎想要选择元素 #div.Name
然后在 AJAX 请求中发送值(假设它是一个 <input />
元素)。请注意,这与全局变量的逻辑不同,但仍然很容易实现。
根据您的需要,您需要选择元素然后获取它的 val()
,像这样:
$.ajax({
data: { name: $('#div.Name').val() },
dataType: 'json',
type: 'POST',
contentType: "application/json; charset=utf-8",
url: 'http://my-API.com:9200/escalations/'
});
另请注意,我删除了 processData
将其设置为 false
这意味着您需要手动对 JSON 进行编码,如果 jQuery 会为您完成编码,那么在给定正确的 contentType
的情况下,这是多余的。 .
关于jquery - 在 AJAX JSON POST 请求中使用全局变量值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46253241/