设置为在MVC3 / Razor应用程序中使用jQuery

时间:2012-05-01 16:11:25

标签: jquery asp.net-mvc-3 razor

Greetins all。

我正在使用一个简单的MVC 3 .net应用程序并试图弄清楚为什么我不能让jQuery工作。

开发环境:Visual Studio 2010,MVC3 Razor

我在_layout.cshtml的部分中放置了以下内容:

<link href="@Url.Content("~/Content/Site.css")" rel="stylesheet" type="text/css" />
<link href="@Url.Content("~/Content/themes/base/jquery-ui.css")" rel="Stylesheet" type="text/css" />

    <script src="@Url.Content("~/Scripts/modernizr-1.7.min.js")" type="text/javascript"></script>
    <link href="@Url.Content("~/Content/themes/base/jquery.ui.core.css")" rel="stylesheet" type="text/css" />     
    <link href="@Url.Content("~/Content/themes/base/jquery.ui.datepicker.css")" rel="Stylesheet" type="text/css" />
    <link href="@Url.Content("~/Content/themes/base/jquery.ui.theme.css")" rel="Stylesheet" type="text/css" />   

     @Script("jquery-1.7.2.min.js")
     @Script("jquery-ui.1.8.11.min.js")
     @Script("jquery.ui.core.js")
     @Script("GHRIInventory.js")

@Script是一个自定义助手:

@helper Script(string scriptName){       }

GHRIInventory.js是一个包含我的代码的外部.js文件,它位于我的Scripts目录中:

/// <reference path="jquery-1.5.1.js" />
/// <reference path="jquery-ui-1.8.11.js" />
/// <reference path="jquery-1.5.1-vsdoc.js" />
/// <reference path="jquery.ui.autocomplete.js" />

$(document).ready(function () {

      $(".button").click(function () {
        $(this).attr("value", "please wait..");
    });
});

在我看来,我放置了以下内容:

这不是一个复杂的脚本我只是用它来证明jQuery正确设置。 应该做的是当我点击按钮时按钮文本从“我的按钮”变为“请稍候......”。当我运行应用程序时,我看到了按钮,但是当我点击它时没有任何反应。

我觉得我拥有所有必要的元素,但它仍然有效: 1)将jQuery添加到_layout.cshtml 2)将我的自定义.js添加到_layout.cshtml,以便它可用于我的所有视图。 3)在脚本文件夹中创建,编码和放置自定义.js 3)将HTML元素添加到视图

以下是我运行应用程序时的源代码:

&LT;

head>
    <meta charset="utf-8" />
    <title>Create</title>



    <link href="/Content/Site.css" rel="stylesheet" type="text/css" />
    <link href="/Content/themes/base/jquery-ui.css" rel="Stylesheet" type="text/css" />

    <script src="/Scripts/modernizr-1.7.min.js" type="text/javascript"></script>
    <link href="/Content/themes/base/jquery.ui.core.css" rel="stylesheet" type="text/css" />     
    <link href="/Content/themes/base/jquery.ui.datepicker.css" rel="Stylesheet" type="text/css" />
    <link href="/Content/themes/base/jquery.ui.theme.css" rel="Stylesheet" type="text/css" />   


          <script src="/Scripts/jquery-1.7.2.min.js" type="text/javascript"></script>   

          <script src="/Scripts/jquery-ui.1.8.11.min.js" type="text/javascript"></script>   

          <script src="/Scripts/jquery.ui.core.js" type="text/javascript"></script>   





     <script src="/Scripts/jquery.ui.core.min.js" type="text/javascript"></script>
          <script src="/Scripts/GHRIInventory.js" type="text/javascript"></script>   


     <script src="../../Scripts/jquery.ui.datepicker.min.js" type="text/javascript"></script>
    <script src="../../Scripts/DatePickerReady.js" type="text/javascript"></script>

</head>


<body>

<input id="button_click" type="button" value="my button" />


</body>

任何麻烦的拍摄建议都会受到欢迎......谢谢......

2 个答案:

答案 0 :(得分:1)

看起来你的选择器是错的;你用类'按钮'选择所有对象 - 我认为你需要类似$('input [type =“button”])或$('#button_click')来选择id

答案 1 :(得分:1)

   you are selecting by class name i.e. $(".button") and no class is assigned. either you should select by control type i.e. $("button") or by id i.e. $("#button_click").

同时确认您的脚本文件是否放在输出源

中所写的相同路径上