Javascript 如何将具有相同类名的多个id值作为数组发送到codeigniter中的数据库?

Javascript 如何将具有相同类名的多个id值作为数组发送到codeigniter中的数据库?,javascript,php,jquery,ajax,codeigniter,Javascript,Php,Jquery,Ajax,Codeigniter,大家好,我正在尝试使用ajax向数据库发送具有相同类名但不同id值的多个id,但它只拾取第一个值,而不是所有值。我如何发送这些多个值 这是我的密码 看法 01:00-02:00 02:00-03:00 03:00-04:00 04:00-05:00 05:00-06:00 06:00-07:00 07:00-08:00 08:00-09:00 09:00-10:00 现在点击 获得价格 当这个函数调用时,如果选择了带有课时槽的div,我希望它可以作为数组访问数据库 这里 函数gethourp

大家好,我正在尝试使用ajax向数据库发送具有相同类名但不同id值的多个id,但它只拾取第一个值,而不是所有值。我如何发送这些多个值

这是我的密码 看法

  • 01:00-02:00
  • 02:00-03:00
  • 03:00-04:00
  • 04:00-05:00
  • 05:00-06:00
  • 06:00-07:00
  • 07:00-08:00
  • 08:00-09:00
  • 09:00-10:00
  • 现在点击 获得价格
    当这个函数调用时,如果选择了带有课时槽的div,我希望它可以作为数组访问数据库

    这里

    
    函数gethourprice()
    {    
    var selected_id=document.getElementsByClassName('hour_slots_available').id;
    警报(选定的\u ID);
    }
    
    但当警报调用时,选定的\u id仅显示一个id 12\u 01
    这里有什么问题吗?你能告诉我吗?

    试试这个:一旦你得到了所有匹配类的对象,迭代该对象并收集所有ID,见下面的代码

    function gethourprice()
    {    
    var selectedIds="";
    var selectedObject = document.getElementsByClassName('hour_slots_available ');
    for(var i=0;i<selectedObject.length;i++)
      selectedIds+=selectedObject[i].id+",";
    alert(selectedIds);    
    }
    
    函数gethourprice()
    {    
    var selectedds=“”;
    var selectedObject=document.getElementsByClassName('hour\u slots\u available');
    
    对于(var i=0;i尝试这样做:一旦您获得了具有匹配类的所有对象,迭代该对象并收集所有ID,请参见下面的代码

    function gethourprice()
    {    
    var selectedIds="";
    var selectedObject = document.getElementsByClassName('hour_slots_available ');
    for(var i=0;i<selectedObject.length;i++)
      selectedIds+=selectedObject[i].id+",";
    alert(selectedIds);    
    }
    
    函数gethourprice()
    {    
    var selectedds=“”;
    var selectedObject=document.getElementsByClassName('hour\u slots\u available');
    
    对于(var i=0;i您需要在此处使用循环

    function gethourprice(){
    
        var selected_ids = document.getElementsByClassName('hour_slots_available ').id;
        for(var i = 0; i < selected_ids.length; i++) {
           alert(selected_ids[i]); // Will alert all ids in loop
       }
    }
    
    函数gethourprice(){
    var selected_id=document.getElementsByClassName('hour_slots_available').id;
    对于(变量i=0;i
    您需要在此处使用循环

    function gethourprice(){
    
        var selected_ids = document.getElementsByClassName('hour_slots_available ').id;
        for(var i = 0; i < selected_ids.length; i++) {
           alert(selected_ids[i]); // Will alert all ids in loop
       }
    }
    
    函数gethourprice(){
    var selected_id=document.getElementsByClassName('hour_slots_available').id;
    对于(变量i=0;i
    您应该使用这样的东西

    function GetAllIds(){
        var idsArray = [];
        $(".hour_slots_available").each(function(){
            idsArray.push($(this).attr("id"));
            //or may be a comma seperated list
           //use jquery. write less do more :)
        });
        return idsArray;
    }
    

    你应该用这样的东西

    function GetAllIds(){
        var idsArray = [];
        $(".hour_slots_available").each(function(){
            idsArray.push($(this).attr("id"));
            //or may be a comma seperated list
           //use jquery. write less do more :)
        });
        return idsArray;
    }
    

    您可以获取数组
    arrayDiv
    中的所有值,现在您可以轻松地将数组
    arrayDiv
    传递给ajax

    代码

    var arrayDiv=new Array();;
    $('#getv')。单击(函数(){
    $(“.hour\u插槽可用”)。每个(功能(i){
    arrayDiv.push($(this.attr('id'));
    });
    控制台日志(arrayDiv);
    //您可以在这里调用ajax
    });
    
    
  • 01:00-02:00
  • 02:00-03:00
  • 03:00-04:00
  • 04:00-05:00
  • 05:00-06:00
  • 06:00-07:00
  • 07:00-08:00
  • 08:00-09:00
  • 09:00-10:00
  • 现在点击
    获取价格
    您可以获取数组
    arrayDiv
    中的所有值,现在您可以轻松地将数组
    arrayDiv
    传递给ajax

    代码

    var arrayDiv=new Array();;
    $('#getv')。单击(函数(){
    $(“.hour\u插槽可用”)。每个(功能(i){
    arrayDiv.push($(this.attr('id'));
    });
    控制台日志(arrayDiv);
    //您可以在这里调用ajax
    });
    
    
  • 01:00-02:00
  • 02:00-03:00
  • 03:00-04:00
  • 04:00-05:00
  • 05:00-06:00
  • 06:00-07:00
  • 07:00-08:00
  • 08:00-09:00
  • 09:00-10:00
  • 现在点击 获取价格
    但当警报调用时,选定的\u id仅显示一个id 12\u 01 这里有什么问题?你能告诉我吗

    因为document.getElementsByClassName返回多个字符串的数组,而不是单个字符串

    请记住,当您请求数组的id值时,共享的代码返回未定义的值。因此,您需要删除
    document.getElementsByClassName('hour\u slots\u available').id中的.id部分,并在选定的\u id上循环以操作单个字符串

    示例:

    function gethourprice() {
      var selected_ids = document.getElementsByClassName('hour_slots_available ');
      for (id in selected_ids) {
        alert(id);
      };
    };
    gethourprice();
    
    CodePen演示(使用console.log而不是alert):

    但当警报调用时,选定的\u id仅显示一个id 12\u 01 这里有什么问题?你能告诉我吗

    因为document.getElementsByClassName返回多个字符串的数组,而不是单个字符串

    请记住,当您请求数组的id值时,共享的代码返回未定义的值。因此,您需要删除
    document.getElementsByClassName('hour\u slots\u available').id中的.id部分,并在选定的\u id上循环以操作单个字符串

    示例:

    function gethourprice() {
      var selected_ids = document.getElementsByClassName('hour_slots_available ');
      for (id in selected_ids) {
        alert(id);
      };
    };
    gethourprice();
    
    CodePen演示(使用console.log而不是alert):


    getElementsByClassName函数将返回元素数组。但它不是javascript本机函数。getElementsByClassName函数的get属性将由浏览器决定。您需要编辑gethourprice以获取元素数组的id。以下是示例

    <script type="text/javascript">
    
        function gethourprice(){
    
            var selected_ids = document.getElementsByClassName('hour_slots_available');
            var ids = [];
            for (var i = 0;  i < selected_ids.length; i++) {
                ids.push(selected_ids[i].id)
            }
            alert(ids);
        }
    </script>
    
    
    函数gethourprice(){
    var selected_id=document.getElementsByClassName('hour_slots_available');
    var-id=[];
    对于(变量i=0;i
    getElementsByClassName函数将返回元素数组。但它不是javascript本机函数。getElementsByClassName函数的get属性将取决于浏览器。您需要编辑gethourprice以获取元素数组的id。以下是示例

    <script type="text/javascript">
    
        function gethourprice(){
    
            var selected_ids = document.getElementsByClassName('hour_slots_available');
            var ids = [];
            for (var i = 0;  i < selected_ids.length; i++) {
                ids.push(selected_ids[i].id)
            }
            alert(ids);
        }
    </script>
    
    
    函数gethourprice(){
    var selected_id=document.getElementsByClassName('hour_slots_available');
    var-id=[];
    对于(变量i=0;i
    谢谢伙计它真的帮了大忙@bhusankawadkar很高兴帮助你谢谢伙计它真的帮了大忙@bhusankawadkar很高兴帮助你