单击链接时无法将记录填充到引导模式

时间:2014-12-23 14:28:51

标签: javascript jquery html twitter-bootstrap

我需要一些帮助,在点击链接时,我一直在努力将记录填充到引导模式,以便用户可以编辑和更新记录。链接不在表格中,在表格中。 以下是我的非工作代码:

HTML

<div class="widget-content">
                        <form action="#" method="GET">
                            <table class="table table-striped table-bordered table-hover table-checkable datatable">
                                <thead>
                                    <tr>
                             <th class="checkbox-column">
                                            <input type="checkbox" class="uniform">
                                        </th>
                                        <th>Actions</th>
                                        <th>Code</th>
                                        <th>Full Name</th>
                                        <th>Company Name</th>
                                        <th>Business Location</th>
                                        <th>Telephone</th>
                                        <th>Credit Limit</th>
                                    </tr>
                                </thead>
                                <tbody>
                                    <?php
                    $query="select * from customer_vendor";
                    $result = mysqli_query($link,$query);
                while($row = mysqli_fetch_array($result, MYSQL_ASSOC) ){
                    $firstname = $row['first_name'];
                    $lastname = $row['last_name'];
                    $fullname = $firstname.' '.$lastname;
                    $climit = number_format($row['credit_limit'],2);
                 echo
                            "<tr>
                                <td class=\"checkbox-column\">
                                            <input type=\"checkbox\" class=\"uniform\" >
                                            <input type=\"hidden\"  >
                                </td>
                                <td>
                                <ul class=\"table-controls\">
                                                <li><a   class=\"bs-tooltip\" id=\"updateit\" name=\"update_cv\" data-class=\"{$row['customer_vendor_id']}\" data-toggle=\"modal\" href=\"#update_customer_vendor\"  title=\"Edit\"><i class=\"icon-pencil\"></i></a> </li>
                                                <li><a class=\"bs-tooltip\" data-toggle=\"modal\" href=\"#delete_customer_vendor\" title=\"Delete\"><i class=\"icon-trash\"></i></a> </li>
                                </ul>
                                </td>
                                <td>{$row['customer_vendor_id']}</td>
                                <td>$fullname</td>
                                <td>{$row['company_name']}</td>
                                <td>{$row['business_location']}</td>
                                <td>{$row['telephone']}</td>
                                <td>$climit</td>                            
                            </tr>";
                        }
                        ?>
                                </tbody>
                            </table>
                            </form>
                            <a href="create_new_cust_vend.php"><button class="btn btn-primary"><i class="fa fa-plus"> New</i></button></a>
                        </div>

模态:

<div class="modal modal-wide fade" id="update_customer_vendor">
    <div class="modal-dialog">
        <div class="modal-content">
            <div class="modal-header">
                <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
                <h4 class="modal-title">Updating customer - Vendor</h4>
            </div>
            <form action="#" method="POST">
                <div class="modal-body" id="update_modal">
                </div>
                <div class="modal-footer">
                    <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
                    <button type="submit" class="btn btn-primary" ><i class="fa fa-save"> Update</i></button>
                </div>
            </form>
        </div><!-- /.modal-content -->
    </div><!-- /.modal-dialog -->
</div>

脚本:

<script type="text/javascript">
    $(document).ready(function(){

        $("#updateit").click(function(){
            var studentClass =$("#updateit").val();
            $.ajax({
                type:"GET",
                url:"update_cust_vend.php",
                data:"updateit="+studentClass,
                success:function(data){
                    $("#update_modal").html(data);
                }
            });
        });
    });
</script>

2 个答案:

答案 0 :(得分:0)

首先将以下内容添加到click事件中以防止超链接的默认行为:

$("#updateit").click(function(event){
    event.preventDefault();
});

之后我感到很困惑,你在这里获取超链接的价值:

var studentClass =$("#updateit").val();

这不是错吗?因为您的超链接没有值...

您可以在自定义属性中存储值。为此,您必须使用data-前缀定义属性。例如data-value

所以你的超级链接将是:

<li><a class=\"bs-tooltip\" id=\"updateit\" ... data-value="1"><i class=\"icon-pencil\"></i></a></li>

要获得使用价值:

var studentClass = $(this).attr('data-value');

$(this)指的是您点击的超链接。

在填充html后你的成功处理程序中你没有显示模态,添加:

$('#update_customer_vendor').modal('show');

答案 1 :(得分:0)

尝试以下。我认为应该解决它。

<li><a   class=\"bs-tooltip\" id=\"updateit\" name=\"update_cv\" data-class="studentclass" data-toggle=\"modal\" href=\"#update_customer_vendor\"  title=\"Edit\"><i class=\"icon-pencil\"></i></a> </li>

链接必须包含studentClass,它不是输入字段,因此不能使用val()。 即data-class =&#34; studentclass&#34;在上面的链接。

$(document).ready(function(){

    $("#updateit").on('click', function(e){
        e.preventDefault();
        var studentClass =$(this).data('class'); // get studentclass form link.
        $.ajax({
            type:"GET",
            url:"update_cust_vend.php",
            data:"updateit="+studentClass,
            success:function(data){
                $("#update_modal").html(data);
                $("#update_customer_vendor").modal();
            }
        });
    });
});