将数据id显示为<;选择>;boostrap模态


show data-id to <select> boostrap modal

我在使用引导程序显示数据id时遇到问题。当我点击按钮时,它不会动态显示值,需要刷新页面2-3次才能更改值(刷新)。

这是我的代码

<a class="btn btn-warning btn-xs" href="#modal-form-edit" rel="button" data-toggle="modal" data-id="1" > Edit</a>
<a class="btn btn-warning btn-xs" href="#modal-form-edit" rel="button" data-toggle="modal" data-id="1" > Edit</a>

模态

<div id="modal-form-edit" class="modal fade" role="dialog">
<div class="modal-dialog">
    <div class="modal-content">
        <div class="modal-header">
            .....
        </div>  
        <div class="modal-body">
            <div class="item form-group">
                    <label class="control-label col-md-3 col-sm-3 col-xs-12">Book list <span class="required">*</span></label>
                    <div class="col-md-6 col-sm-6 col-xs-12">
                        <select class="select2_single form-control" tabindex="-1" data-width="100%" name="book" id="book" required="required">
                            <option id="book" value="" selected="selected"></option>
                            <option id="book" value="1" >book 1</option>
                            <option id="book" value="2" >book 2</option>
                        </select>
                    </div>
            </div>
        </div>
    </div>
 </div>

js

<script>
 $('#modal-form-edit').on('show.bs.modal', function(e) {
  var books-id = $(e.relatedTarget).data('id');
  $("#book").val(books-id);
 });
</script>

那里有错误的代码吗?

感谢之前的任何帮助(对不起我的英语)

试一下,

$('.atag').on('click', function(e) {
     var books = $(this).attr('data-id');
     $("#book").val(books);
 });

我已经给出了saperate类,并且变量声明是错误的,-被认为是minus,而使用_

演示

尝试:

$('#modal-form-edit').on('show.bs.modal', function(e) {
  var books_id = $(this).data('id');
  $('.select2_single option[value="'+books_id+'"]').attr('selected','selected');
 });