javascript - How to get all the elements with the same class name from any jquery object? -
please find below html code:
<table class="table table-bordered quetable" id="qustiontbl"> <thead> <tr> <th width="60px">sr no</th> <th>enter question</th> </tr> </thead> <tbody> <tr> <td> <b>q.1</b> </td> <td> <div class="questiondiv"> <div class="row "> <div class="col-sm-10 col-xs-10 col-md-10"> <input class="form-control questiontxt" placeholder="question" type="text"> </div> </div> <div class="subquestiondiv"> <div class="row"> <div class="col-sm-10 col-xs-10 col-md-10"> <input class="form-control subquestiontxt" placeholder="question" type="text"> </div> </div> </div> <div class="subquestiondiv"> <div class="row"> <div class="col-sm-10 col-xs-10 col-md-10"> <input class="form-control subquestiontxt" placeholder="question" type="text"> </div> </div> </div> <div class="subquestiondiv"> <div class="row"> <div class="col-sm-10 col-xs-10 col-md-10"> <input class="form-control subquestiontxt" placeholder="question" type="text"> </div> </div> </div> </div> </td> </tr> </tbody> </table> in above html table, want itterate rows .questiondiv each row , .subquestiondiv each .questiondiv jquery. have written following jquery code this. getting .questiondiv row, not getting how .subquestiondiv .questiondiv object. please in this.
jquery code:
$('#qustiontbl').find('tr').each(function (i, el) { question={} subquestionlist=[] var $tds = $(this).find('td') questiondivobj = $tds.eq(1).find('.questiondiv') questiontxt=$(questiondivobj).find('.questiontxt').val() question['question']=questiontxt; // here problem, how .subquestiondiv div // questiondivobj $(".subquestiondiv").each( function() { subquestiontxt=$(this).find('.subquestiontxt').val() subquestionlist.push({'subquestion':subquestiontxt}); }); question['subquestions']=subquestionlist questionslist.push(question) }); });
you need add "context" jquery selector:
$(".subquestiondiv", questiondivobj).each(...) in context of code:
$('#qustiontbl').find('tr').each(function (i, el) { question={} subquestionlist=[] var $tds = $(this).find('td') questiondivobj = $tds.eq(1).find('.questiondiv') questiontxt=$(questiondivobj).find('.questiontxt').val() question['question']=questiontxt; // add context selector, finds within question div $(".subquestiondiv", questiondivobj).each( function() { subquestiontxt=$(this).find('.subquestiontxt').val() subquestionlist.push({'subquestion':subquestiontxt}); }); question['subquestions']=subquestionlist questionslist.push(question) });
Comments
Post a Comment