javascript - 仅对 AJAX 数据中的非空变量传递参数

标签 javascript jquery ajax

这里我想做哪些变量不为空,我想在数据中传递该变量,在这种情况下区域是空的,所以我想传递城市和列表类型的参数,但我不知道该怎么办?

var city = "Karnadaka";
var area = "";
var listing type = "RENT";

$.ajax({
    type: 'GET',
    url: "http://www.domain.com/api/get/searchProperties",
    data: {
        area: area,
        city: city,
        listingType: listing_type
    },
    success: function(data) {
        console.log(data);
    }
});

最佳答案

您可以使用delete删除对象中的属性对

var city = "Karnadaka";
var area = "";
var listing_type = "RENT";

var data={
        area: area,
        city: city,
        listingType: listing_type
    }

for (k in data){
    if(data[k]=="") delete data[k];
}

$.ajax({
    type: 'GET',
    url: "http://www.domain.com/api/get/searchProperties",
    data: data,
    success: function(data) {
        console.log(data);
    }
});

关于javascript - 仅对 AJAX 数据中的非空变量传递参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41327335/

相关文章:

javascript - Chrome setTimeout() 计时问题

javascript - 容器滚动时元素拖动出错

javascript - 参数未传递到 ActionResult

javascript - 使用 form.submit() 清空 $_GET 和 $_POST

javascript - Bootstrap 3 模式并不总是激活 ajax 代码

javascript - 在 Angular 7 中使用 PathLocationStrategy 后刷新页面时获取 404

javascript - jQuery - 检测用户是否可以看到页面底部

javascript - 从图像链接中去除文件名

javascript - 如何在 jquery ui 中将图标放在 Accordion 中

javascript - 如何添加 2 个 myFunctions?