Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/463.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery对话框在浏览器中跳转到整页_Javascript_Jquery_Dialog - Fatal编程技术网

Javascript jQuery对话框在浏览器中跳转到整页

Javascript jQuery对话框在浏览器中跳转到整页,javascript,jquery,dialog,Javascript,Jquery,Dialog,我有一个带有WebGrid的对话框,其中显示了项目列表: @if (Model.ItemsByLocation != null) { @grid.GetHtml( tableStyle: "table", fillEmptyRows: true, headerStyle: "header", footerStyle: "footer", mode: WebGridPagerModes.All, firstText: "<<Fi

我有一个带有WebGrid的对话框,其中显示了项目列表:

 @if (Model.ItemsByLocation != null)
{
    @grid.GetHtml(
    tableStyle: "table",
    fillEmptyRows: true,
    headerStyle: "header",
    footerStyle: "footer",
    mode: WebGridPagerModes.All,
    firstText: "<<First",
    previousText: "<Prev",
    nextText: "Next>",
    lastText: "Last>>",
    htmlAttributes: new { id = "grid"},
    columns: new []
    {
        //grid.Column("ItemNumber", "Item"),
        grid.Column(header: "Item Number", format: (item) => Html.ActionLink((string)item.ItemNumber, "ShowItem", "Inventory", new { id = item.ItemNumber.ToString()}, new {onclick = "GetItemDetails(" + item.ItemNumber.ToString() + ");"})),
        grid.Column("ItemDescription","Desc"),
        grid.Column("ItemSerialNumber","SN"),
        grid.Column("itemLocationSite","Site"),
        grid.Column("ItemLocationBuilding","Bldg"),
        grid.Column("ItemLocationFloor","Flr"),
        grid.Column("ItemLocationOffice","Off"),
        grid.Column("ItemTypeDescription","Type"),
        grid.Column("FirstName","First"),
        grid.Column("LastName","Last")

    }) 

}
else {
 <p><i>No item to display</i></p>   
}
这会在第一个对话框的顶部显示另一个对话框,但仅显示第二个或两个对话框,然后两个对话框都关闭,第二个对话框中的数据在浏览器中显示为整页。你知道为什么吗

这是有关详细信息的对话框:

 $(document).ready(function () {
    //debugger;

    $("#divDetails").dialog({
        autoOpen: false,
        width: 'auto',
        resizable: true,
        title: 'Item Details',
        modal: true,
        closeOnEscape: false,
        show: {
            effect: 'drop', direction: 'up'
        },
        buttons: {
            "OK": function () {

                $(this).dialog("close");
            }
        }
    }).prev("ui-dialog-titlebar").css("background", "#FF3300");
    $(".dialog").click(function () {
        $("#divDetails").dialog("open");
    });

});

<div id="divDetails" style="display:none" class="ui-dialog-titlebar ui-widget-header">

 </div>
$(文档).ready(函数(){
//调试器;
$(“#divDetails”)。对话框({
自动打开:错误,
宽度:“自动”,
可调整大小:正确,
标题:“项目详细信息”,
莫代尔:是的,
closeOnEscape:错误,
展示:{
效果:“下降”,方向:“上升”
},
按钮:{
“OK”:函数(){
$(此).dialog(“关闭”);
}
}
}).prev(“ui对话框标题栏”).css(“背景”,“#FF3300”);
$(“.dialog”)。单击(函数(){
$(“#divDetails”)。对话框(“打开”);
});
});

我在代码中设置了一些断点,在显示第二个对话框后,调用控制器索引函数。这是怎么发生的?如果我从链接中删除ShowItem,它就会这样做,但如果我将其放回链接中,它会调用ShowItem函数两次。为什么?

我仍然不知道问题出在哪里,但如果我将webgrid列更改为此,它就可以正常工作:

 grid.Column(header: "Item Number", format:@<a href="#" onclick="GetItemDetails(@item.ItemNumber.ToString());return false;">@item.ItemNumber.ToString()</a>),
网格列(标题:“项目编号”,格式:@),
 grid.Column(header: "Item Number", format:@<a href="#" onclick="GetItemDetails(@item.ItemNumber.ToString());return false;">@item.ItemNumber.ToString()</a>),