我正在尝试进行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/'
});
});
});
答案 0 :(得分:1)
根据您在评论中的描述,听起来好像您想要选择元素#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为您执行时是多余的,给定正确{{1} }}