Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 使用jPages和通过ajax交付的内容_Jquery_Ajax_Jquery Pagination - Fatal编程技术网

Jquery 使用jPages和通过ajax交付的内容

Jquery 使用jPages和通过ajax交付的内容,jquery,ajax,jquery-pagination,Jquery,Ajax,Jquery Pagination,要让jPages()插件处理通过ajax交付的内容,我遇到了一些实际问题 我正在构建的页面基本上允许用户查看我们客户公司现有空缺的列表。加载页面时,将使用表单中的默认值触发ajax请求。然后,该请求将所有空缺返回到页面(见下文) 这是伟大的,当我们有少量的空缺如下所示,但是,如果我们有100的空缺 为了解决这个问题,我决定使用jPages对页面加载时发送的ajax请求的结果进行分页。首先,此页面(内容加载到其中)的my base html的默认结构如下: <div class="icam

要让jPages()插件处理通过ajax交付的内容,我遇到了一些实际问题

我正在构建的页面基本上允许用户查看我们客户公司现有空缺的列表。加载页面时,将使用表单中的默认值触发ajax请求。然后,该请求将所有空缺返回到页面(见下文)

这是伟大的,当我们有少量的空缺如下所示,但是,如果我们有100的空缺

为了解决这个问题,我决定使用jPages对页面加载时发送的ajax请求的结果进行分页。首先,此页面(内容加载到其中)的my base html的默认结构如下:

<div class="icams-specific" id="icams-specific">
  <h1>Vacancies</h1>
  <h2><span class="numberFound">&nbsp;</span> found - <a class="inline-job-alerts" href="/job-alerts.html">set up alerts</a></h2>
  <hr />
  <div id="searchContentWindow"></div>
</div>
function fireAjaxRequest(formUrl,contentArea,form){
  $.ajax({
    type: 'POST',
    url: formUrl,
    data: form.serialize(),
    success: function(response){
      var errorMessageFound = $(response).find('p.error');
      var numberOfRoles = 0;
      if(errorMessageFound.length > 0){
        contentArea.html(errorMessageFound);
        $('.numberFound').html(numberOfRoles + ' job');
      }else{
        var filteredSearch = $(response).find('div.searchresults:last');        
        var numberOfRolesCalc = $(filteredSearch).find('.jobpost').each(function(){
          numberOfRoles++;
        });
        contentArea.html(filteredSearch);
        if(numberOfRoles > 1){
          var jobs = '&nbsp;jobs';
        }else{
          var jobs = '&nbsp;job';
        }
        $('.numberFound').html(numberOfRoles + jobs);
        form.find('#p_text').val('');
        trimSpacing();
      }             
     }
    });
   }
作为尝试在此设置中实现jPages的一部分,我在代码末尾添加了以下内容:

...trimSpacing();
$('.searchresults').attr('id', 'searchResults');
$('div.holder').jPages({
  containerID : 'searchResults'
  ,perPage : 2
});...
这在某种程度上起到了分页的作用,但奇怪的是,它似乎将以下html分组到单独的页面中:

<div class="jobpost Job Postings" style="display: block; opacity: 1;">...</div>
<div class="divider" style="display: block; opacity: 1;">...</div>
。。。
...
内容和分隔符。我相信它是这样做的,因为它将perPage应用于指定容器中的每个div,而真正的is应该只应用于类为.jobpost的div

我已经浏览了这个插件的文档,但是找不到一种方法来指定哪些元素应该被专门分页。理想情况下,此脚本应显示为每页2个作业,但由于分隔符div,它实际上显示1个作业

是否有人有任何建议或变通方法可以确保每页显示正确数量的作业?是否能够指定文档中未包含的要中断的选择器

任何帮助都将不胜感激

可以在这里()找到所讨论的页面,它是一个正在进行的工作

如果您需要任何进一步的信息或代码,请随时询问


Jezzipin

到目前为止,我找到的最简单的解决方案是在使用以下代码输出到页面之前解析filteredSearch变量:

$(filteredSearch).find('.divider').each(function(){
   $(this).remove();
});
但是,如果有一种在这种情况下更好的替代方法可以避免从ajax响应中删除内容,我愿意接受建议

$(filteredSearch).find('.divider').each(function(){
   $(this).remove();
});