如何在克隆时动态更改文本字段的值

时间:2013-12-18 20:44:22

标签: jquery clone

我正在克隆我表格的一部分。该部分有一个动态分配的文本字段,克隆时我想自动更改以反映它是克隆部分的事实。

脚本将ID分配给文本字段

 <script>

$("input[name='SiteVisitCode']").on('change', function(){
  var SVCode = document.getElementById('SiteVisitCode');
          $('#SampleID').val(SVCode.value +"-W");
          $("#QASampleID").val(SVCode.value +"-QC-FB");
          $("#Template").val(SVCode.value +"-FDW");
 </script>

HTML

     <div>  Site Visit Code<input type="text" name="SiteVisitCode" id="SiteVisitCode">    </div>
  <fieldset>
  <div id="template">
  <div>Sample ID: <input type="text" id="SampleID" name="SampleID"></div>
        <select id="Analysis" multiple name="Analysis" data-iconpos="left" data-icon="grid">
      <OPTION>Analysis (Select all that apply)</OPTION>
     <option value ="ABF">Anions, Bromide, Fluoride -- None -- Ice</option>
 </select>
 </div><!--template-->
 </fieldset>
 <input type="button" data-theme="b" data-icon="plus" id="FieldDup" value="ADD FIELD DUP">
  <div id="placeholder"></div>

克隆脚本

  <script>
  $(function () {
   $('#FieldDup').on("click", function () {
   $('#template').clone(true).prependTo('#placeholder');
    });
  })

 </script>

我希望更改已分配的sampleID,并将$("#Template").val(SVCode.value +"-FDW")标识的分配值应用于克隆的SampleID

1 个答案:

答案 0 :(得分:0)

是的,问题是您正在复制ID并尝试再次定位它。但问题是您无法定位ID,因为它现在正在页面上使用两次,这将导致.val()绑定失败。

我相信我的工作语法是:

$('#template').clone(function() {
    $(this).val(SVCode.value +"-FDW")
}).prependTo('#placeholder');

这将定位特定#template并设置其值。