net - razor pages c#
El paquete de script de validaciĆ³n jQuery de ASP.NET MVC 4 no funciona (1)
El método .live ha quedado obsoleto en jQuery v1.7 + y eliminado en jQuery v1.9 +.
Bugreport: http://bugs.jquery.com/ticket/13213
Explicación: http://jquery.com/upgrade-guide/1.9/#live-removed
.live () eliminado
El método .live () ha quedado obsoleto desde jQuery 1.7 y se ha eliminado en 1.9. Recomendamos actualizar el código para usar el método .on () en su lugar. Para coincidir exactamente con $ ("a.foo"). Live ("clic", fn), por ejemplo, puede escribir $ (documento) .on ("clic", "a.foo", fn). Para obtener más información, consulte la documentación de .on (). Mientras tanto, el complemento jQuery Migrate se puede usar para restaurar la funcionalidad .live ().
Cómo solucionarlo: descargue el complemento jquery migrate y agréguelo a su agrupación:
bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
"~/Scripts/jquery-{version}.js",
"~/Scripts/jquery-migrate-{version}.js"));
Actualización: El complemento migrate ahora también está disponible en Nuget:
PM> Install-Package jQuery.Migrate
Recientemente, actualicé un sitio web para usar ASP.NET MVC 4 y tengo el siguiente código para procesar mi paquete de validación de jQuery.
Pero me sale el siguiente error:
Microsoft JScript runtime error: Object doesn''t support property or method ''live''
Y este error al hacer clic en un cuadro de texto:
Unhandled exception at line 1234, column 5 in http://localhost:13112/Scripts/jquery.validate.js
0x800a138f - Microsoft JScript runtime error: Unable to get value of the property ''call'': object is null or undefined
Mi código de paquete:
bundles.Add(new ScriptBundle("~/bundles/jqueryval").Include(
"~/Scripts/jquery.unobtrusive*",
"~/Scripts/jquery.validate*"));
Mi código _Layout.cshtml:
@Styles.Render("~/Content/css")
@Styles.Render("~/Content/themes/base/css")
@Scripts.Render("~/bundles/jquery")
@Scripts.Render("~/bundles/jqueryval")
@Scripts.Render("~/bundles/jqueryui")
@Scripts.Render("~/bundles/modernizr")
Aquí está mi HTML renderizado:
<link href="/Content/site.css" rel="stylesheet"/>
<link href="/Content/themes/base/jquery.ui.core.css" rel="stylesheet"/>
<link href="/Content/themes/base/jquery.ui.resizable.css" rel="stylesheet"/>
<link href="/Content/themes/base/jquery.ui.selectable.css" rel="stylesheet"/>
<link href="/Content/themes/base/jquery.ui.accordion.css" rel="stylesheet"/>
<link href="/Content/themes/base/jquery.ui.autocomplete.css" rel="stylesheet"/>
<link href="/Content/themes/base/jquery.ui.button.css" rel="stylesheet"/>
<link href="/Content/themes/base/jquery.ui.dialog.css" rel="stylesheet"/>
<link href="/Content/themes/base/jquery.ui.slider.css" rel="stylesheet"/>
<link href="/Content/themes/base/jquery.ui.tabs.css" rel="stylesheet"/>
<link href="/Content/themes/base/jquery.ui.datepicker.css" rel="stylesheet"/>
<link href="/Content/themes/base/jquery.ui.progressbar.css" rel="stylesheet"/>
<link href="/Content/themes/base/jquery.ui.theme.css" rel="stylesheet"/>
<script src="/Scripts/jquery-1.9.0.js"></script>
<script src="/Scripts/jquery.unobtrusive-ajax.js"></script>
<script src="/Scripts/jquery.validate.js"></script>
<script src="/Scripts/jquery.validate.unobtrusive.js"></script>
<script src="/Scripts/jquery-ui-1.9.2.js"></script>
<script src="/Scripts/modernizr-2.6.2.js"></script>
¿Puede alguien señalar por qué podría estar ocurriendo este error?
Gracias, Alex.