C# 从jQuery数据表行弹出的模式窗口

C# 从jQuery数据表行弹出的模式窗口,c#,jquery-datatables,C#,Jquery Datatables,通过单击DataTable单元格内的超链接,我让jQuery模式窗口工作得非常辛苦。以下是数据表和模式窗口位: <script type="text/javascript" language="javascript" src="DataTables-1.9.4/media/js/jquery.js"></script> <script type="text/javascript" language="javascript" src="DataTables-1.9.4

通过单击DataTable单元格内的超链接,我让jQuery模式窗口工作得非常辛苦。以下是数据表和模式窗口位:

<script type="text/javascript" language="javascript" src="DataTables-1.9.4/media/js/jquery.js"></script>
<script type="text/javascript" language="javascript" src="DataTables-1.9.4/media/js/jquery.dataTables.js"></script>
<script type="text/javascript" language="javascript" src="DataTables-1.9.4/media/js/jquery-ui.js"></script>

<script type="text/javascript">
    $(document).ready(function () {
        $('#example').dataTable({
            "bPaginate": true,
            "bLengthChange": true,
            "bFilter": true,
            "bSort": true,
            "bInfo": true,
            "bAutoWidth": true,
            "bJQueryUI": true,
            "sPaginationType": "full_numbers",
            "bProcessing": true,
            "sAjaxSource": './arrays2.txt',
            "aoColumnDefs": [{
                "aTargets": [0],
            "mRender": function (data, type, full) {
                return '<a href="Video2.aspx?videoId=' + data + '" class="videowindow">Watch</a>';
            }
        }]
    });
    $(".videowindow").click(function () {
        $("#thedialog").attr('src', $(this).attr("href"));
        $("#somediv").dialog({
            width: 900,
            height: 600,
            modal: true,
            close: function () {
                $("#thedialog").attr('src', "about:blank");
            }
        });
        return false;
    });
});
</script>

$(文档).ready(函数(){
$('#示例')。数据表({
“bPaginate”:对,
“bLengthChange”:正确,
“bFilter”:没错,
“bSort”:正确,
“宾福”:没错,
“bAutoWidth”:没错,
“bJQueryUI”:没错,
“sPaginationType”:“完整编号”,
“bProcessing”:正确,
“sAjaxSource”:“./arrays2.txt”,
“aoColumnDefs”:[{
“目标”:[0],
“mRender”:功能(数据、类型、完整){
返回“”;
}
}]
});
$(“.videowindow”)。单击(函数(){
$(“#thedialog”).attr('src',$(this.attr(“href”));
$(“#somediv”)。对话框({
宽度:900,
身高:600,
莫代尔:是的,
关闭:函数(){
$(“#thedialog”).attr('src',“about:blank”);
}
});
返回false;
});
});
下面是包含iframe模式弹出窗口的div:

<div id="somediv" title="Video Window" style="display: none;">
            <iframe id="thedialog" width="850" height="520"></iframe>
</div>

如果我直接调用链接,它可以正常工作:

<a href='video2.aspx?videoId=1' class='videowindow'>Modal Window Test Link</a>

但是如果我在数据表中单击上面的mrended链接,模式窗口将被忽略,我将直接进入该页面(即,浏览器从我的页面转到Video2.aspx?videoId=x)。我到底做错了什么

谢谢

  • 传唱

尝试将事件句柄从
更改。单击
添加到,然后添加event.preventDefault()

$('#example').on('click', '.videowindow',function ( event ) {
   event.preventDefault(); 
   $("#thedialog").attr('src', $(this).attr("href"));
   $("#somediv").dialog({
        width: 900,
        height: 600,
        modal: true,
        close: function () {
            $("#thedialog").attr('src', "about:blank");
        }
    });
    return false;
}