首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Ajax双代码如何使其更短

Ajax双代码如何使其更短
EN

Stack Overflow用户
提问于 2014-12-17 09:35:22
回答 2查看 82关注 0票数 3

我希望你能帮我,那我就有麻烦了。我有两个类似的jQuery.Ajax函数,我只想把它放在一个函数中。我真的不知道怎么做,我希望你能帮我

下面是我的两个ajax函数,它们都可以正常工作。那是我的第一次

代码语言:javascript
复制
//When the page loads it shows the three first ideas

var total = 3;
    var start = 0;
    var filterName = jQuery(".select-name-filter-selector-filterPersones").val();
    var filterStatus = jQuery(".select-status-filter-selector-filterStatus").val();
    var lines = jQuery("#ajouter").val();
    jQuery.ajax({
        type: "POST",
        url : "../scripts/ajaxSuggestions.php",
        data:{limit:total, name:filterName, status:filterStatus,
            start:start,lines:lines},
        success:function(data){
            jQuery("#content").append(data);
        }
    });

这是我的第二个function.Allways,我点击这个按钮来显示更多,它添加了三个想法

代码语言:javascript
复制
//click ajax function that add 3 ideas to page
jQuery("#ajouter").click(function (){
        total += 3;
        start += 3;
        jQuery.ajax({
            type: "POST",
            url : "../scripts/ajaxSuggestions.php",
            data:{limit:total, name:filterName, status:filterStatus,
                start:start},
            success:function(data){
                jQuery("#content").append(data);
                if(total >= lines){
                    jQuery("#ajouter").hide();
                }
            }

        });
    });

我希望你能帮我解决我英语不好的问题。:)

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-12-17 09:49:56

//当页面加载时调用

代码语言:javascript
复制
var total = 3;
var start = 0;
getSuggestion(total, start);

//按一下按钮

代码语言:javascript
复制
jQuery("#ajouter").click(function (){
        total += 3;
        start += 3;
        getSuggestion(total, start);
});

//函数定义

代码语言:javascript
复制
function getSuggestion(total, start)
{
    var filterName = jQuery(".select-name-filter-selector-filterPersones").val();
    var filterStatus = jQuery(".select-status-filter-selector-filterStatus").val();
    var lines = jQuery("#ajouter").val();

      jQuery.ajax({
            type: "POST",
            url : "../scripts/ajaxSuggestions.php",
            data:{limit:total, name:filterName, status:filterStatus,
                start:start},
            success:function(data){
                jQuery("#content").append(data);
                if(total >= lines){
                    jQuery("#ajouter").hide();
                }
            }

        });
}

如果以下值每次没有不同,那么您也可以在页面加载上定义它,并将其作为函数调用中的参数传递。

代码语言:javascript
复制
var filterName = jQuery(".select-name-filter-selector-filterPersones").val();
var filterStatus = jQuery(".select-status-filter-selector-filterStatus").val();
var lines = jQuery("#ajouter").val();
票数 1
EN

Stack Overflow用户

发布于 2014-12-17 09:42:07

创建一个简单的函数

代码语言:javascript
复制
function ajaxCall(limit, filterName ,filterStatus ,type)
{
   jQuery.ajax({
            type: "POST",
            url : "../scripts/ajaxSuggestions.php",
            data:{limit:total, name:filterName, status:filterStatus,
                start:start},
            success:function(data){
                jQuery("#content").append(data);
                if(type == 1)
                {   

                   if(total >= lines){
                       jQuery("#ajouter").hide();
                  }
                }else {  jQuery("#content").append(data);
                }
            }

        });
}

现在你的电话

ajaxCall (极限,filterName,过滤状态,0)

第二次呼叫

代码语言:javascript
复制
 jQuery("#ajouter").click(function (){
         total += 3;
         start += 3;
        ajaxCall (limit,filterName,filterStatus,1)
     });

首先,或者您可以编写自己的逻辑。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27522334

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档