Tag: partial views

Rails 3:如何从js.erb文件中调用javascript函数

现在我已经升级到Rails 3,我正在试图找出分离和重用javascript片段的正确方法。 这是我正在处理的场景: 我有一个包含两个区域的页面:一个包含应该可拖动的元素,另一个包含droppables。 当页面加载时,我使用jQuery来设置draggables和droppables。 目前我在application.html.erb的头部有脚本,我确信这不是正确的解决方案,但至少可行。 当我按下页面上的按钮时,会向我的控制器发出一个ajax调用,用一组新的元素替换draggables,这些元素也应该是可拖动的。 我有一个js.erb文件,在正确的位置呈现部分。 渲染后我需要使新元素可拖动,所以我想重用当前存在于application.html.erb中的代码,但我还没有找到正确的方法来执行它。 我只能通过将代码直接粘贴到我的js.erb文件(yuck)中来使新元素可拖动。 我想要的是: – 包含函数prepdraggables()和prepdroppables()的javascript文件 – 从application.html.erb或js.erb文件调用函数的方法 我已经尝试使用:content_for来存储和重用代码,但似乎无法让它正常工作。 我目前在application.html.erb的head部分有什么 $(document).ready(function () { // declare all DOM elements with class draggable to be draggable $( “.draggable” ).draggable( { revert : ‘invalid’ }); // declare all DOM elements with class legal to be droppable $(“.legal”).droppable({ hoverClass : ‘legal_hover’, drop […]

ASP.NET MVC 3 Partial View在视图中从动态列表动态呈现和链接

在我的MVC 3应用程序中,我将有一个包含局部视图的视图。 视图本身将包含动态生成的链接列表。 该链接必须使局部视图呈现该链接项的详细信息。 我会使用Ajax吗? 如果是这样,既然我以前没有使用过Ajax,那么有没有在MVC 3应用程序中使用它的文档? 此外,当首次加载视图时,将不加载局部视图或理想地显示另一个单独的局部视图。 关于这样做的好方法的任何想法? 谢谢您的帮助。

用asp.net MVC局部视图加载jquery

我有一个局部视图,我想使用jquery在主视图中呈现它。 以下是我编写jQuery的方法: $(document).ready(function() { $(“#dvGames”).load(“/LiveGame/Partial3”); }); 控制器方法如下所示: public ActionResult Partial3(DateTime gameDate) { return View(“Partial3”); } 我没有看到任何东西。 我试过了 它工作但我想在局部视图中过滤数据,所以我使用jquery加载方法。

使用JQuery Ajax Post调用渲染一个简单的ASP.NET MVC PartialView

我的MVC控制器中有以下代码: [HttpPost] public PartialViewResult GetPartialDiv(int id /* drop down value */) { PartyInvites.Models.GuestResponse guestResponse = new PartyInvites.Models.GuestResponse(); guestResponse.Name = “this was generated from this ddl id:”; return PartialView(“MyPartialView”, guestResponse); } 然后在我的视图顶部的javascript中: $(document).ready(function () { $(“.SelectedCustomer”).change( function (event) { $.ajax({ url: “@Url.Action(“GetPartialDiv/”)” + $(this).val(), data: { id : $(this).val() /* add other additional parameters */ }, […]

MVC 4使用局部视图进行validation

我正在使用MVC 4和Entity Framework来开发一个Web应用程序。 我正在使用加载了javascript的部分视图。 其中之一是包含validation的创建视图。 这就是我的问题:validation。 我有一个自定义validation逻辑,例如,如果用户在某个字段(如“名称”)中输入了某些数字,则会显示错误。 在这里,使用部分视图,它将我的部分视图重定向到显示的错误,但我想要做的是留在我的主视图(索引视图)并保留显示错误的部分视图。 编辑: 这是我的部分观点: @model BuSIMaterial.Models.Person @using (Html.BeginForm()) { @Html.ValidationSummary(true) Person First name : @Html.TextBoxFor(model => model.FirstName, new { maxlength = 50 }) @Html.ValidationMessageFor(model => model.FirstName) Last name : @Html.TextBoxFor(model => model.LastName, new { maxlength = 50 }) @Html.ValidationMessageFor(model => model.LastName) National number : @Html.TextBoxFor(model => model.NumNat, new { […]

返回部分视图的控制器操作会在授权失败时插入登录页面

我有一个视图,使用jQuery从控制器操作加载部分视图。 控制器操作使用Authorize属性进行修饰,如果用户在调用该操作被重定向到正确的LogOn页面时超时,则LogOn页面将插入到部分视图已经消失的视图中。 这里有另一篇文章描述了使用jQuery的解决方案,但不幸的是它不包含任何代码示例,这是我需要的,因为我不是很熟悉jQuery(以及新的Web开发),我需要解决这个问题我会尽快。 我想要做的就是将用户重定向到正确的LogOn页面,这对我来说听起来很顺利,但到目前为止似乎并不是这样。 如果jQuery是要走的路,有人可以发一个代码示例,这真的会帮助我。 谢谢。

在ASP.NET MVC C#中使用Jquery更新部分视图

我正在使用MVC C#和Jquery。 我在一个相当大的页面中有一个局部视图,其中包含许多选项卡。 点击一个复选框,我想更新表格中的局部视图。 我得到的只是局部视图 这是我在Jquery中的代码: $(‘#activelist,#inactivelist’).change(function () { var status = ‘inactive’; window.location.href = ‘@Url.Action(“Skits”,”KitSection”)’ + ‘?id=’ + id+ ‘&status=’ + status; }); 关于如何根据我如何调用它来更新表单中的局部视图的任何想法? 这是PartialView的代码 return PartialView(Kits); 如上所述,我看到的只是显示的部分视图而不是整个表单。

如何处理返回PartialView的ajax调用的控制器操作中的模型状态错误

我有一个POST控制器动作,返回一个局部视图。 一切似乎都很容易。 但。 我使用$.ajax()加载它,将类型设置为html 。 但是当我的模型validation失败时,我想我应该抛出模型状态错误的错误。 但我的回复总是返回500 Server错误。 如何在不返回Json的情况下报告模型状态错误。 我仍然希望返回部分视图,我可以直接附加到某些HTML元素。 编辑 我还想避免返回错误局部视图。 这看起来像是在客户端上取得了成功。 让客户端解析结果以查看它是否真正成功容易出错。 设计人员可能会更改局部视图输出,仅此一项就会破坏function。 所以我想抛出exception,但是将正确的错误消息返回给ajax客户端。

ASP.NET MVC使用jQuery ajax渲染局部视图

我有一个控制器动作,呈现局部视图: public ActionResult Details(int id) { DetailsViewModel model = ModelBuilder.GetDetailsViewModel(id, _repository); return PartialView(“Details”, model); } 我将返回的内容加载到动态元素中,如下所示: $container = appendContainer(); // adds a div to the dom with the correct id $container.load(“MyController/Details”, function(response, status, xhr) { if (status != “success”) { $(container).html(‘an error has occured’); } }); 所以这会创建一个div,然后将返回的内容加载到该div中。 我想略微改变它,以便只有在对控制器的调用成功时才创建容器div。 所以: jQuery调用控制器动作 controller返回PartialView,如果未找到Id,则返回null 如果返回PartialView,则会创建容器并使用返回的内容加载容器。 如果控制器未找到Id,则不会创建任何内容并显示警报。 我很感激有关如何最好地实现这一点的任何指示。