2012-07-17 3 views
0

Je dois garder un div et à l'intérieur que je dois avoir des réponses et puis la div devrait fermer.Même après avoir fermé la div après les questions dans la boucle, La div div se ferme sans les réponses .. code:pour dessiner html dans le fichier js

if(a.isQuestion == "true"){ 
        ansdetails=""; 
        ansdiv =""; 
        $.each(a.answers, function(key, b) { 
         if(a.anstype=="select only one"){ 
          ansdetails +="<div id=\"" +b.nextuid+ "\" data-link=\"Answer" +a.index+ "\" class=\"showfirst\"><tr><th width=\"20\" height=\"40\" align=\"left\" valign=\"top\" scope=\"row\" class=\"questionnaireanswer\"><input name=\"radiobuttton\" answered=\"\" current-index=\""+a.index+"\" value=\"" +b.ansuid +"\" data-value=\"" +b.ansuid+ "\" class=\"\" type=\"radio\">" +b.ansname+ " .</th>\ 
          <td width=\"438\" height=\"40\" align=\"left\" valign=\"top\" class=\"questionnaireanswer\"> " +b.ansvalue+ "</td></tr></div>"; 
         } 
         else{ 
          ansdetails +=" <div id=\"Answer" +a.index+ "\" class=\"showfirst\">\<tr>\ 
          <th width=\"20\" height=\"40\" align=\"left\" valign=\"top\" scope=\"row\" class=\"questionnaireanswer\"><input name=\"chk\" current-index=\""+a.index+"\" id=\"" +b.ansuid +"\" value=\"" +b.nextuid+ "\" data-value=\"" +b.ansuid+ "\" class=\"\" type=\"checkbox\">" +b.ansname+ " .</th>\ 
          <td width=\"438\" height=\"40\" align=\"left\" valign=\"top\" class=\"questionnaireanswer\"> " +b.ansvalue+ "</td></tr>"; 
         } 
        });    

       } 

RÉSULTAT:

<div id=/"/"></div> 
<tr><td><input type=/"radio/" name="dd" value=/"/">Answer 1</td></tr> 
<tr><td><input type=/"radio/" name="dd" value=/"/">Answer 2</td></tr> 
<tr><td><input type=/"radio/" name="dd" value=/"/">Answer 3</td></tr> 
<tr><td><input type=/"radio/" name="dd" value=/"/">Answer 4</td></tr> 

RÉSULTAT PRÉVU:

<div id=/"/"> 
<tr><td><input type=/"radio/" name="dd" value=/"/">Answer 1</td></tr> 
<tr><td><input type=/"radio/" name="dd" value=/"/">Answer 2</td></tr> 
<tr><td><input type=/"radio/" name="dd" value=/"/">Answer 3</td></tr> 
<tr><td><input type=/"radio/" name="dd" value=/"/">Answer 4</td></tr> 
</div> 

Répondre

2

Un élément <tr> ne peut pas être un enfant d'un élément <div> (uniquement table/thead/tbody/tfoot). Essayez de générer un code HTML valide.

0

Comme indiqué par Quentin, la génération de table contient une erreur. La syntaxe valable est plus comme ceci:

<div> 
    <table> 
     <tr> 
      <td> 
       <label><input type="radio" name="dd" value="">Answer 1</label> 
      </td> 
     </tr> 
     <tr> 
      <td> 
       <label><input type="radio" name="dd" value="">Answer 2</label> 
      </td> 
     </tr> 
     <tr> 
      <td> 
       <label><input type="radio" name="dd" value="">Answer 3</label> 
      </td> 
     </tr> 
    </table> 
</div> 

Quoi qu'il en soit, il peut être plus facile et plus lisible pour générer une liste:

<ul> 
    <li> 
     <label><input type="radio" name="dd" value="">Answer 1</label> 
    </li> 
    <li> 
     <label><input type="radio" name="dd" value="">Answer 2</label> 
    </li> 
    <li> 
     <label><input type="radio" name="dd" value="">Answer 3</label> 
    </li> 
</ul>