******************** Editar 2 *************** ******* Descubrí el problema ... Pero no me gustan las implicaciones. Estaba probando nuestra aplicación móvil dirigida a iPhone anteriormente y usando un complemento para enmascarar la cadena de agente de usuario de Firefox como un iPhone.ASP.net no genera javascript para algunos Agentes de usuario
.NET no generó en realidad el código requerido para los respaldos de la publicación basándose solo en esa información.
No me gusta esto, sin embargo, dado que el iPhone y otros dispositivos multimedia pueden interpretar javascript, ASP.net está rompiendo cualquier aplicación que se base en el Javascript generado por el servidor para ejecutarse.
Entonces, si la comunidad lo permite ... Me gustaría cambiar mi pregunta oficial a ... ¿Por qué ASP.net no generará JavaScript para navegadores específicos y cómo puedo desactivar esta "función"?
*************** End Editar 2 ***************
Tengo un extraño problema. Copié un código de trabajo de mi host remoto a mi computadora en el trabajo. Cuando trato de utilizar la página que estoy recibiendo un error de JavaScript
__doPostBack is not defined
javascript:__doPostBack('ctl00$ContentPlaceHolder1$login','')()()
cuando pocos el origen de la página de salida, por supuesto no hay lado del servidor genera JavaScript.
intenté crear una página sencilla:
<%@ Page Language="VB" AutoEventWireup="false" CodeFile="jsTest.aspx.vb" Inherits="_jsTest" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<asp:TextBox ID="tbTest" runat="server"></asp:TextBox><br />
<asp:LinkButton ID="linkTest" runat="server">LinkButton</asp:LinkButton>
</form>
</body>
</html>
Codebehind:
Partial Class _jsTest
Inherits System.Web.UI.Page
Protected Sub linkTest_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles linkTest.Click
Response.Write(tbTest.Text)
End Sub
End Class
conseguir el mismo error.
He intentado reiniciar (hey, funciona la mitad de las veces), limpié todo desde App_Code, global.asax y web.config, agregué un cuadro de texto con autopostback = true ... Me he quedado sin ideas.
¿Alguien puede arrojar algo de luz sobre lo que está sucediendo aquí?
************** Más información ************** Acabo de intentar todo de nuevo en IE y funciona como se esperaba, la página fuente de muestra:
<input type="hidden" name="__EVENTTARGET" id="__EVENTTARGET" value="" />
<input type="hidden" name="__EVENTARGUMENT" id="__EVENTARGUMENT" value="" />
<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwUKLTkxNTA2MDE2NWRkxhZMwlMVwJprcVsvQLJLrTcgaSM=" />
<script type="text/javascript">
//<![CDATA[
var theForm = document.forms['form1'];
if (!theForm) {
theForm = document.form1;
}
function __doPostBack(eventTarget, eventArgument) {
if (!theForm.onsubmit || (theForm.onsubmit() != false)) {
theForm.__EVENTTARGET.value = eventTarget;
theForm.__EVENTARGUMENT.value = eventArgument;
theForm.submit();
}
}
//]]>
</script>
<div>
<input type="hidden" name="__EVENTVALIDATION" id="__EVENTVALIDATION" value="/wEWAwK20LZAAuzRsusGAsz0+6YPxxO+Ewv1XsD5QKJiiprrGp+9a3Q=" />
</div>
Si bien la fuente en Firefox sólo se muestra:
<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwUKLTkxNTA2MDE2NWRkxhZMwlMVwJprcVsvQLJLrTcgaSM=" />
<input type="hidden" name="__EVENTVALIDATION" id="__EVENTVALIDATION" value="/wEWAwK20LZAAuzRsusGAsz0+6YPxxO+Ewv1XsD5QKJiiprrGp+9a3Q=" />
Almacenamiento de las páginas web en el escritorio y la apertura en libreta revela lo mismo ...
Estoy investigando ... Parece que se puede solucionar con una sección en web.config o machine.config. Por defecto, los navegadores desconocidos se están tratando como un viejo navegador incapaz de javascript. –
Birk