DatePicker:当多个数组ID时,无法设置未定义的属性“ currentDay”

礁人

我在动态行表中使用datepicker遇到了问题。

  • 如果输入字段的ID插入了索引(例如:)price_date[0],则可以使用。
  • 如果没有索引(例如:)price_date[],则会创建错误。无法设置currentDay未定义的属性
  • datepicker 显示,但单击日期时将显示错误。
  • 只有第一个price_date[]不显示错误。

i = parseInt($('#counter').val());
$("#add_row").click(function(){
  $('#addr'+i).html("<td align='right'>"+ (i+1) +"</td>\
<td class='col-xs-2'>\
<input type='text' name='harga_start_date[]' id='harga_start_date[]' class='datepick form-control' >\
</td>");	
  $('#tab_logic').append('<tr id="addr'+(i+1)+'"></tr>');
  i++;
});
$("#delete_row").click(function(){
  if(i> 1){
    $("#addr"+(i-1)).html('');
    i--;
  }
});


$(document).on('focus',".datepick", function(){
  $(this).datepicker({
    dateFormat : 'yy-mm-dd',
    changeMonth: true,
    changeYear: true
  });
}); 
<script type="text/javascript" src="https://code.jquery.com/jquery-1.11.3.min.js"></script>
<script type="text/javascript" src="https://code.jquery.com/ui/1.11.4/jquery-ui.min.js"></script>
<link rel="stylesheet" type="text/css" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" />
<script type="text/javascript" src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>

<table class="table table-striped"  id="tab_logic">
  <thead>
    <tr>
      <td colspan="7">
        <a id="add_row" class="btn btn-success btn-sm pull-left">Add Row</a><a id="delete_row" class="pull-right btn btn-danger btn-sm">Delete Row</a>
      </td>
    </tr>
    <tr class="success">
      <th class="text-center">No.</th>
      <th class="text-center">Start Date</th>
    </tr>
  </thead>
  <tbody >
    <tr id='addr0' class="itemsGroup">
      <td align="right">1
      </td>
      <input type="hidden" name="counter" id="counter" value=1> 
      <td class="col-xs-8">
        <input type="text" name="harga_start_date[]" id="harga_start_date[]" class="datepick form-control" >
      </td>
    </tr>
    <tr id='addr1'></tr>
</table>        

这是小提琴:https : //jsfiddle.net/d4csw1kx/

莫什·费

如果我正确理解问题,则必须更改2件事。

  1. 删除ids属性(您已经知道这一点)。
  2. 这里的一个大问题是,您可以focus在插件本身负责的任何时候初始化插件

因此,解决方案是分别初始化任何输入(第一个和第二个输入)(加载页面时以及每次添加一行后)。

i = parseInt($('#counter').val());
$("#add_row").click(function () {
    var addr = $('#addr' + i).html("<td align='right'>" + (i + 1) + "</td>\
						<td class='col-xs-2'>\
						  <input type='text' name='harga_start_date[]' class='datepick form-control' >\
						</td>");
    $('#tab_logic').append('<tr id="addr' + (i + 1) + '"></tr>');
  attachDatepicker(addr.find('input'));
    i++;
});

$("#delete_row").click(function () {
    if (i > 1) {
        $("#addr" + (i - 1)).html('');
        i--;
    }
});

function attachDatepicker(input) {
  input.datepicker({
    dateFormat: 'yy-mm-dd',
    changeMonth: true,
    changeYear: true
  });
}

attachDatepicker($('input'));
<script type="text/javascript" src="https://code.jquery.com/jquery-1.11.3.min.js"></script>
<script type="text/javascript" src="https://code.jquery.com/ui/1.11.4/jquery-ui.min.js"></script>
<link rel="stylesheet" type="text/css" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" />
<script type="text/javascript" src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>
<link rel="stylesheet" type="text/css" href="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.11.4/jquery-ui.min.css" />

<table class="table table-striped"  id="tab_logic">
  <thead>
    <tr>
      <td colspan="7">
        <a id="add_row" class="btn btn-success btn-sm pull-left">Add Row</a><a id="delete_row" class="pull-right btn btn-danger btn-sm">Delete Row</a>
      </td>
    </tr>
    <tr class="success">
      <th class="text-center">No.</th>
      <th class="text-center">Start Date</th>
    </tr>
  </thead>
  <tbody >
    <tr id='addr0' class="itemsGroup">
      <td align="right">1
      </td>
      <input type="hidden" name="counter" id="counter" value=1> 
      <td class="col-xs-8">
        <input type="text" name="harga_start_date[]" id="harga_start_date[]" class="datepick form-control" >
      </td>
    </tr>
    <tr id='addr1'></tr>
</table> 

http://jsbin.com/yujeda/edit?html,js

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

SCRIPT5007:无法设置属性'currentDay'的值:对象为null或未定义

来自分类Dev

TypeError:尝试映射多个数组时无法读取未定义的属性“ map”

来自分类Dev

尝试创建按日期排序的数组时,无法设置未定义错误的“某物”属性。

来自分类Dev

javascript抛出未捕获的TypeError:填充多维数组时无法设置未定义的属性“ 0”

来自分类Dev

尝试获取对象时无法设置未定义的属性“ id”

来自分类Dev

错误:无法在UserComponent上设置未定义的属性“ id”

来自分类Dev

dojo无法设置未定义的属性“ id”

来自分类Dev

angularjs添加值无法设置未定义的属性“ id”

来自分类Dev

快速会话无法设置未定义的属性“ id”

来自分类Dev

错误:无法在UserComponent上设置未定义的属性“ id”

来自分类Dev

dojo无法设置未定义的属性“ id”

来自分类Dev

快速会话无法设置未定义的属性“ id”

来自分类Dev

解析工厂中声明的数组时,“无法读取未定义的属性'id'”

来自分类Dev

合并数组时无法读取未定义的属性“ push”

来自分类Dev

删除时出错:无法读取未定义的属性“ id”

来自分类Dev

无法设置未定义的属性

来自分类Dev

JS:无法设置未定义的属性

来自分类Dev

JavaScript:无法设置未定义的属性

来自分类Dev

无法设置未定义的属性“宽度”

来自分类Dev

无法设置未定义的属性“ backgroundSize”

来自分类Dev

无法设置未定义的属性“ x”

来自分类Dev

无法设置未定义的属性“运行”

来自分类Dev

无法设置未定义的属性“ y”

来自分类Dev

无法设置userNm的属性未定义

来自分类Dev

“无法设置未定义的属性” innerHTML”

来自分类Dev

无法设置未定义的属性“ exports”

来自分类Dev

无法设置未定义的属性

来自分类Dev

JavaScript:无法设置未定义的属性

来自分类Dev

无法设置未定义的属性“ classRules”

Related 相关文章

  1. 1

    SCRIPT5007:无法设置属性'currentDay'的值:对象为null或未定义

  2. 2

    TypeError:尝试映射多个数组时无法读取未定义的属性“ map”

  3. 3

    尝试创建按日期排序的数组时,无法设置未定义错误的“某物”属性。

  4. 4

    javascript抛出未捕获的TypeError:填充多维数组时无法设置未定义的属性“ 0”

  5. 5

    尝试获取对象时无法设置未定义的属性“ id”

  6. 6

    错误:无法在UserComponent上设置未定义的属性“ id”

  7. 7

    dojo无法设置未定义的属性“ id”

  8. 8

    angularjs添加值无法设置未定义的属性“ id”

  9. 9

    快速会话无法设置未定义的属性“ id”

  10. 10

    错误:无法在UserComponent上设置未定义的属性“ id”

  11. 11

    dojo无法设置未定义的属性“ id”

  12. 12

    快速会话无法设置未定义的属性“ id”

  13. 13

    解析工厂中声明的数组时,“无法读取未定义的属性'id'”

  14. 14

    合并数组时无法读取未定义的属性“ push”

  15. 15

    删除时出错:无法读取未定义的属性“ id”

  16. 16

    无法设置未定义的属性

  17. 17

    JS:无法设置未定义的属性

  18. 18

    JavaScript:无法设置未定义的属性

  19. 19

    无法设置未定义的属性“宽度”

  20. 20

    无法设置未定义的属性“ backgroundSize”

  21. 21

    无法设置未定义的属性“ x”

  22. 22

    无法设置未定义的属性“运行”

  23. 23

    无法设置未定义的属性“ y”

  24. 24

    无法设置userNm的属性未定义

  25. 25

    “无法设置未定义的属性” innerHTML”

  26. 26

    无法设置未定义的属性“ exports”

  27. 27

    无法设置未定义的属性

  28. 28

    JavaScript:无法设置未定义的属性

  29. 29

    无法设置未定义的属性“ classRules”

热门标签

归档