2016-12-27 5 views
0

Я хочу клонировать таблицу (не таблицу строк) с текстовыми полями и переключателями в ней.Значения кнопок радио удаляются во время клонирования в jquery

В частности, я хочу клонировать целую таблицу без значений текстового поля, но с значениями переключателя.

Здесь текстовые поля и значения переключателя удаляются при клонировании. Как я могу получить желаемое поведение?

Здесь мой код:

<div> 
 
<table id="tablePreviousHistory"> 
 
    <tbody> 
 
     <tr> 
 
      <td> 
 
       <input id="pCountry" name="pCountry" value="" type="text"> 
 
      </td> 
 
      <td> 
 
       <input id="pvisatype" name="pvisatype" value="" type="text"> 
 
      </td> 
 
      <td> 
 
       <input id="pstartdate" name="pstartdate" value="" type="text"> 
 
      </td> 
 
      <td> 
 
       <input id="pStatus" name="pStatus" value="Yes" type="radio"> 
 
       Yes<br> 
 
       <input id="pStatus" name="pStatus" value="No" type="radio"> 
 
       No 
 
      </td> 
 
     </tr> 
 
    </tbody> 
 
</table> 
 
</div>

Javascript:

<script> 
 
$("#tablePreviousHistory").clone(true).attr('id', 'tablePreviousHistory' + k).find("input").val('').each(function() { 
 
       if (this.type=='radio') { 
 
        this.checked = false; 
 
       } 
 
       $(this).attr({ 
 
        'id': function (_, id) { return id + k }, 
 
        'name': function (_, name) { return name + k } 
 
       }); 
 
      }).end().insertAfter("#tablePreviousHistory" + (k != 1 ? (k - 1).toString() : '')); 
 
</script>

ответ

0

Это из-за при клонировании это unchec рунец следуя,

if (this.type=='radio') { 
     this.checked = false; 
} 
+0

Hi, Спасибо за ваш повтор. –

+0

Привет, Спасибо за ваш ответ. Я попытался удалить линию в соответствии с вашим предложением, все еще не работает! –

0

Текст входы очищаются в этой строке кода с val('')

$("#tablePreviousHistory").clone(true).attr('id', 'tablePreviousHistory' + k).find("input").val('').each(function() { 

Если заменить эту строку с указанной ниже, то они больше не должны ясно.

$("#tablePreviousHistory").clone(true).attr('id', 'tablePreviousHistory' + k).find("input").each(function() { 
+0

Привет, Спасибо за ваш ответ, –

+0

Привет, Спасибо за ваш ответ. Я пробовал по вашему предложению, все еще не работает !! –

Смежные вопросы