简体   繁体   English

在ajax数据对象之间切换

[英]Toggle between ajax data objects

I'd like to toggle between 2 ajax data objects on click of a link. 我想在单击链接时在2个Ajax数据对象之间切换。 Its not possible to do this with the method below, can anyone suggest a way I can do this? 使用下面的方法无法做到这一点,有人可以建议我可以做到这一点的方法吗? Thanks! 谢谢!

jQuery.ajax({
  url: "/somefile.php",
  dataType: 'JSON',
  type: 'POST',
  jQuery(".togglesearch").toggle(
    function () {
      data: JSON.stringify({
        "Name": jQuery("#searchfield").val(),
        "Number": ""
      }),
    },
    function () {
      data: JSON.stringify({
        "Name": "",
        "Number": jQuery("#searchfield").val()
      }),
    } 
  );

 var data = ["Name", "Number"]; var obj = {"Name":"", "Number":""}; var val = jQuery("#searchfield").val(); var n = 0; var res; $("button").click(function() { obj[data[n]] = val; obj[data[n === 0 ? n + 1 : n- 1]] = ""; res = JSON.stringify(obj); $("label").text(JSON.stringify(res)); // do ajax stuff /* jQuery.ajax({ url: "/somefile.php", dataType: "JSON", type: "POST", data: res }) */ n = n === 0 ? 1 : 0 }) 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"> </script> <button>click</button> <input type="text" id="searchfield" value="123" /><label></label> 

I think you'll have to put each different ajax call inside the toggles: 我认为您必须将每个不同的ajax调用放入切换器中:

 jQuery(".togglesearch").toggle(
    function () {
       jQuery.ajax({
           url: "/somefile.php",
           dataType: 'JSON',
           type: 'POST',
           data: JSON.stringify({
               "Name": jQuery("#searchfield").val(),
               "Number": ""
           })
       });
     },
    function () {
        jQuery.ajax({
           url: "/somefile.php",
           dataType: 'JSON',
           type: 'POST',
           data: JSON.stringify({
               "Name": "",
               "Number": jQuery("#searchfield").val()
           })
        });
     }
  });

Try this: 尝试这个:

jQuery(".togglesearch").toggle(function() {
    var data = { "Name": "", "Number": jQuery("#searchfield").val() };
    callAjax(data);
}, function(){
    var data = { "Name": jQuery("#searchfield").val(), "Number": "" };
    callAjax(data);
});

function callAjax(data) {
    jQuery.ajax({
        url: "/somefile.php",
        dataType: 'JSON',
        type: 'POST',
        data: JSON.stringify(data),
        success: function(response) { }
    )};
}

In toggle finally call a function with ajax call. 在切换中,最后用ajax调用函数。 Let me know if it works for you. 请让我知道这对你有没有用。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM