2016-05-25 9 views
0

jQueryとCSSを使用したMVCアプリケーションはLocalhostと連携して正常に出力されますが、IISにデプロイすると、jQueryとCSSがロードされません。 ...どんな助けもありがとうございます....JQueryとCSSを使用したMVCアプリケーション

HomeController.cs: 
using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Web; 
using System.Web.Mvc; 
using Mvc_BrowserWindow.Models; 

namespace Mvc_BrowserWindow.Controllers 
{ 
    public class HomeController : Controller 
    { 
     // 
     // GET: /Home/ 

     public ActionResult Index() 
     { 
      return View(); 
     } 

     // 
     // GET: /Home/Details/5 

     public ActionResult Details(int id) 
     { 
      SampleDbContext db = new SampleDbContext(); 
      Employee employee = db.Employees.Single(x => x.Id == id); 
      return View(employee); 
     } 

     // 
     // GET: /Home/Create 

     public ActionResult Create() 
     { 
      return View(); 
     } 

     // 
     // POST: /Home/Create 

     [HttpPost] 
     public ActionResult Create(FormCollection collection) 
     { 
      try 
      { 
       // TODO: Add insert logic here 

       return RedirectToAction("Index"); 
      } 
      catch 
      { 
       return View(); 
      } 
     } 

     // 
     // GET: /Home/Edit/5 

     public ActionResult Edit(int id) 
     { 
      SampleDbContext db = new SampleDbContext(); 
      Employee employee=db.Employees.Single(x => x.Id == id); 
      return View(employee); 
     } 

     // 
     // POST: /Home/Edit/5 

     [HttpPost] 
     public ActionResult Edit(Employee employee) 
     { 
      if (ModelState.IsValid) 
      { 
       SampleDbContext db = new SampleDbContext(); 
       Employee employeeFromDb = db.Employees.Single(x => x.Id == employee.Id); 
       employeeFromDb.FullName = employee.FullName; 
       employeeFromDb.Gender = employee.Gender; 
       employeeFromDb.Age = employee.Age; 
       employeeFromDb.HireDate = employee.HireDate; 
       employeeFromDb.Salary = employee.Salary; 
       employeeFromDb.PersonalWebSite = employee.PersonalWebSite; 

       db.ObjectStateManager.ChangeObjectState(employeeFromDb, System.Data.EntityState.Modified); 
       db.SaveChanges(); 
       return RedirectToAction("Details", new { id = employee.Id }); 
      } 
      return View(employee); 
     } 

     // 
     // GET: /Home/Delete/5 

     public ActionResult Delete(int id) 
     { 
      return View(); 
     } 

     // 
     // POST: /Home/Delete/5 

     [HttpPost] 
     public ActionResult Delete(int id, FormCollection collection) 
     { 
      try 
      { 
       // TODO: Add delete logic here 

       return RedirectToAction("Index"); 
      } 
      catch 
      { 
       return View(); 
      } 
     } 
    } 
} 

Edit.csHtml 

@model Mvc_BrowserWindow.Models.Employee 

@{ 
    ViewBag.Title = "Edit"; 
} 
<link href="../../Content/Site.css" rel="stylesheet" type="text/css" /> 
<link href="../../Content/themes/base/jquery.ui.all.css" rel="stylesheet" type="text/css" /> 
<script src="../../Scripts/jquery-1.7.1.min.js" type="text/javascript"></script> 
<script src="../../Scripts/jquery-ui-1.8.20.min.js" type="text/javascript"></script> 

<script type="text/javascript"> 
    $(function() { 
     $("input:text.date").datepicker(
     { 
      dateFormat: "dd/mm/yy" 
     }); 
    }); 
</script> 

@using (@Html.BeginForm()) 
{  
    @Html.EditorForModel() 
    <br /> 
    <input type="submit" value="Save" /> 
} 

DateTime.csHtml: 

@model DateTime? 
@Html.TextBox("", (Model.HasValue ? Model.Value.ToString("dd/MM/yyyy") : string.Empty), new { @class = "date" }) 

答えて

0

あなたの問題は、あなたのリンクとスクリプトには相対パスを使用している可能性があります。代わりに絶対パスを使用する必要があります(たとえば、ContentScriptsというフォルダがWebサイトのルートフォルダにあると仮定します)。

<link href="/Content/Site.css" rel="stylesheet" type="text/css" /> 
<link href="/Content/themes/base/jquery.ui.all.css" rel="stylesheet" type="text/css" /> 
<script src="/Scripts/jquery-1.7.1.min.js" type="text/javascript"></script> 
<script src="/Scripts/jquery-ui-1.8.20.min.js" type="text/javascript"></script> 

..あなたのMVCのURLが/の数に変化する場合、相対パスは動作しませんので、現在のパスからの相対を意味します。 /でパスを開始すると、ウェブサイトのルートの絶対パスになります。

関連する問題