根据ajax中的几个条件检索数据

时间:2015-12-25 22:56:27

标签: jquery ajax

我正在使用AJAX获取数据库数据,将其与变量进行比较以显示它。我只是根据一个条件比较“Where”,即字段ID是否等于变量“+ id_var +”。问题是,现在我正在尝试在不同领域的Where中添加更多条件,但是我没有成功,有关如何这样做的任何帮助?

 var key=null;
 $.ajax({
                   type: "POST",
                   url: "GetRecord?DB=EMP&Table=EMP_HISTORY",
                   dataType : 'xml',
                   data : {
                    "Where" : "ID="+id_var +""  
                   },
                 success:function(xml) {
                     $(xml).find('record').each(function () {
                        key = $(this).find("KEY").text();
                     });
                     if(key) {
                        var url = "GetDisplay?DB=EMP&Table=EMP_HISTORY&Where=KEY="+key +"";
                        window.open(url,"_self");
                     }
                 },
                 error: function (error) {
                     alert('error');
                 }
               });

1 个答案:

答案 0 :(得分:0)

我可以看到您的HTTP Query中有错误,您无法定义where一个定义key内部另一个值的值..为此,您必须更改Where是一个包含KEY的数组以及您希望它拥有的其他变量。

假设您使用的是jQuery ..您可以使用$.param(),请查看here了解详情..

var query = {
    DB: "EMP",
    Table: "EMP_HISTORY",
    Where: {
        KEY: "1234",
        OR: {
            id_var: 'IS NULL'

        }
    }
};

$.param(query);

// returns "DB=EMP&Table=EMP_HISTORY&Where%5BKEY%5D=1234&Where%5BOR%5D%5Bid_var%5D=IS+NULL"