Javascript 在div'中使用ajax加载项目;s

Javascript 在div'中使用ajax加载项目;s,javascript,jquery,ajax,Javascript,Jquery,Ajax,我目前正在使用以下javascript在几个div中加载项: <script> $.ajax({ url: 'load.php?type=divA', cache: false, success: function(data){ $('#divA').html(data); } }); $.ajax({ url: 'load.php?type=di

我目前正在使用以下javascript在几个div中加载项:

<script>
    $.ajax({
        url: 'load.php?type=divA',
        cache: false,     
        success: function(data){
        $('#divA').html(data); 
        }
    });   
    $.ajax({
        url: 'load.php?type=divB',
        cache: false,     
        success: function(data){
        $('#divB').html(data); 
        }
    });  </script>

$.ajax({
url:'load.php?type=divA',
cache:false,
成功:功能(数据){
$('#divA').html(数据);
}
});   
$.ajax({
url:'load.php?type=divB',
cache:false,
成功:功能(数据){
$('#divB').html(数据);
}
});  
HTML:


我正在寻找(并认为)有更好的方法来做到这一点。与此类似:1函数用于div,它自动加载(乘法)div中的项目:

函数loadItem(){
$.ajax({
url:'load.php?type=',
cache:false,
成功:功能(数据){
$('').html(数据);
}
}); 
};

可以这样做:

function loadItem(divId) {
    $.ajax({
        url: 'load.php?type=' + divId,
        cache: false,
        success: function (data) {
            $('#' + divId).html(data);
        }
    });
};

我认为这样更好:

function loadItem(div) {
   $.ajax({
      url: 'load.php?type='+div,
      cache: false,     
      success: function(data){
         $('#'+div).html(data); 
      }
   }); 
};

$(function(){
   $('div[id^="div"]').each(function(){
      loadItem(this.id);
   });
});

此代码正在执行的操作:

  • 使一个全局函数将函数放在文档外部准备就绪
  • 在doc ready块循环中,通过id以
    div
    开头的div,并将该id传递给函数
  • 因此,如果有两个div,那么将有两个ajax调用

  • 这是迟来的答复:

    $('div[class*="div"]').each(function(){ // class contains div
       loadItem(this.className.split(' ')[1]); 
    });// split by ' ' space and pass the second index as arrays are 0 based index.
    

    文档加载时如何执行此功能?并自动检测div的加载项(“divA”);装载项目(“divB”)在doc ready中调用这些。
    function loadItem(div) {
       $.ajax({
          url: 'load.php?type='+div,
          cache: false,     
          success: function(data){
             $('#'+div).html(data); 
          }
       }); 
    };
    
    $(function(){
       $('div[id^="div"]').each(function(){
          loadItem(this.id);
       });
    });
    
    $('div[class*="div"]').each(function(){ // class contains div
       loadItem(this.className.split(' ')[1]); 
    });// split by ' ' space and pass the second index as arrays are 0 based index.