如何在使用jQuery启动的模式中更新-data-row属性?

时间:2016-10-19 03:18:22

标签: javascript jquery twitter-bootstrap

我有一个像这样启动的模态:

<a href="javascript:;" class="edit_item" data-row="6">
 <i class="icon-open"></i>
</a>

然后反过来发射

$( document ).on( "click", ".edit_item", function() {

        var row=$(this).data("row");
        var params="myfile.php&link="+row;
        open_box_edit(params);
});

open_box_edit只是:

function open_box_edit(params)
{        

      var URL=ajax_url+"/?"+params;
      var modal = $('#modal_edit');
        modal
            .find('.modal-body')
            .load(URL, function (responseText, textStatus) {
                if ( textStatus === 'success' || 
                     textStatus === 'notmodified') 
                {
                    modal.modal("show");
                }
        });  
}

一切都在modal-body内正常运行,但现在我在该模式中添加了一个modal-footer div,而div内部是一个删除项目的链接,该项目具有相同的data-row属性作为开放的模态。基本上是:

<div id="modal_edit" class="modal fade" 
     tabindex="-1" role="dialog" aria-labelledby="plan-info-edit" aria-hidden="true">
    <div class="modal-dialog">
        <div class="modal-content">
            <div class="modal-body">
                <!-- CONTENT HERE -->
            </div>
            <div class="modal-footer">

            <!-- DELETE BUTTON -->
            <a href="javascript:;" class="delete_item" data-row="">
              <i class="icon-delete"></i>
            </a>
            <!-- DELETE BUTTON -->

            </div>
        </div>
    </div>
</div>

我如何做到<a href="javascript:;" class="delete_item" data-row="">基本上变成<a href="javascript:;" class="delete_item" data-row="6">?基本上我需要做的就是在模态中更新delete_item类的数据行。

非常感谢任何提示!

更新1:

  • 我在考虑可能给open_box_edit另一个参数(行),然后在函数中运行像$('.delete_item').data('row', row);这样的东西。但是,我如何针对特定的div和模态页脚?

3 个答案:

答案 0 :(得分:1)

试试这个:

.load(URL, function (responseText, textStatus) {
                if ( textStatus === 'success' || 
                     textStatus === 'notmodified') 
                {
                    $('div.modal-footer > a.delete_item').data('row', param);
                    modal.modal("show");
                }

答案 1 :(得分:1)

var val=6;
var footerDataRow=$(".modal-footer").find('a');
footerDataRow.data('data-row',val);

这可以在一行中完成,我已经解剖了它,以便你理解它。

答案 2 :(得分:1)

单击编辑项时更新数据属性。

$( document ).on( "click", ".edit_item", function() {
    var row=$(this).data("row");
    $('.delete_item').data("row",row); // add this line
    var params="myfile.php&link="+row;
    open_box_edit(params);
});