0

也许这个问题可能已经问过了。但我还没有为以下情况找到令人满意的答案。

我有 MVC 应用程序,其中,当我单击按钮时,它会弹出一个 jquery 对话框。如果我在标题中包含 jquery***.js,它工作正常。但如果我在 Body 之后包含它,它就不起作用。

根据最佳实践,我们应该在正文之后包含所有脚本。那么,为什么当我在底部包含脚本时这个对话框没有打开。

**Layout.cshtml**

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    @Content.Css("themes/base/jquery.ui.all.css", Url)
    @Content.Css("Site.css", Url)

    /**** Dialog works fine if I include 
    *** @Content.Script("jquery-1.5.1.min.js", Url) ***
    ***here*****/

</head>
<body>

   *********
   *********

    @Content.Script("jquery-1.5.1.min.js", Url)
    @Content.Script("jquery-ui-1.8.11.min.js", Url)
    @Content.Script("jquery.unobtrusive-ajax.min.js", Url)
</body>
</html>


Index.cshtml

@model ****

<script>
    $(function () {
        $("#dialog").dialog({
            autoOpen: false,
            model: true
        });
    });

    function btn1Click() {
        $("#dialog").dialog("open");
    }
</script>

<h2>Index</h2>

@using (Html.BeginForm () )
{
    <input id="btn1" value="Index1" type="button" onclick="btn1Click()"  /> 
    <br />

        <div id="dialog" title="Basic dialog">
        <p>Testing...</p>
        </div>
} 
4

0 回答 0