net mvc kendoui kendo for demos controles chart asp asp.net-mvc-4 kendo-ui

asp.net-mvc-4 - mvc - telerik



MVC4 Kendo Project Ajax.BeginForm UpdateTargetId Issue (1)

Yo tuve el mismo problema. La solución es agregar una declaración en la página _Layout.cshtml.

@ Scripts.Render ("~ / bundles / jqueryval")

La definición de ScriptBundle ("~ / bundles / jqueryval") como se muestra a continuación

bundles.Add(new ScriptBundle("~/bundles/jqueryval").Include( "~/Scripts/jquery.unobtrusive*", "~/Scripts/jquery.validate*"));

Acabo de comenzar un nuevo proyecto en MVC4 usando algún código de un proyecto MVC3 existente. Puedo obligar a mi formulario a ajax a volver a cargar el DIV específico, pero no a utilizar el método de envío normal, solo con la función javascript de prueba doSomthing (). ¿Qué me estoy perdiendo?

Para aclarar: el primer botón no funciona bien, el segundo, pero no quiero hacerlo de esa manera.

VER

@using (Ajax.BeginForm("Method1", null, new AjaxOptions { HttpMethod = "post", UpdateTargetId = "divPartial1" }, new { id = "form1" })) { <div class="data"> @Html.LabelFor(x => x.TotalSubmitted, new { @class = "total" })<div class="number total">@Html.FormatValue(Model.TotalSubmitted, "{0:n0}")</div> ... </div> <div class="details"> <div id="divPartial1"> @Html.Partial("ReportDashboardAppPartial") </div> </div> <div style="text-align: center;"> <button type="submit" class="k-button"><span class="k-icon k-i-search" /></button> <button type="button" name="Save" value="Save" onclick="doSomething(); return false;"><span class="k-icon k-i-search" /></button> </div> } <script type="text/javascript"> function doSomething() { $.ajax({ url: ''@Url.Action("Method1", "Controller")'', type: ''post'', data: $(''form#form1'').serialize(), success: function (result) { $(''#divPartial1'').html(result); } }); } </script>

_Diseño

@model BaseViewModel <!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8" /> <title>@ViewBag.Title</title> <link href="~/favicon.ico" rel="shortcut icon" type="image/x-icon" /> <meta name="viewport" content="width=device-width" /> @Scripts.Render("~/bundles/modernizr") @Scripts.Render("~/bundles/jquery") <link href="@Url.Content("~/Content/kendo.compatibility.css")" rel="stylesheet" type="text/css" /> <link href="@Url.Content("~/Content/kendo/2012.3.1114/kendo.common.min.css")" rel="stylesheet" type="text/css" /> <link href="@Url.Content("~/Content/kendo/2012.3.1114/kendo.dataviz.min.css")" rel="stylesheet" type="text/css" /> <link href="@Url.Content("~/Content/kendo/2012.3.1114/kendo.default.min.css")" rel="stylesheet" type="text/css" /> @RenderSection("styles", false) <script src="@Url.Content("~/Scripts/kendo/2012.3.1114/jquery.min.js")"></script> <script src="@Url.Content("~/Scripts/kendo/2012.3.1114/kendo.all.min.js")"></script> <script src="@Url.Content("~/Scripts/kendo/2012.3.1114/kendo.aspnetmvc.min.js")"></script> @RenderSection("scripts", false) </head> <body> @Html.Partial("_AlertWindow") <div id="wrapper"> <header> <div id="logindisplay"> @Html.Partial("_LoginPartial") </div> <a href="@Url.Action("Index", "Home")"> <div id="logo"></div> </a> <div id="title"> <h1>Ha!</h1> </div> @(Html.Kendo().Menu().Name("Menu").BindTo("Main").SecurityTrimming(true)) </header> <div id="main"> @RenderBody() </div> <footer> <div id="version">@Html.ActionLink("Version " + @Model.CurrentVersion, "About", "Home")</div> </footer> </div> @RenderSection("end_scripts", false) </body> </html>

Sé que esto debería funcionar