********************編集2のためにJavaScriptを生成しません *******私はこの問題を考え出した...しかし、私は意味を好きではありません。私は、私たちのiPhoneは、以前のモバイルアプリケーションをターゲットにテストし、iPhoneなど、Firefoxのユーザーエージェント文字列をマスクするためのプラグインを使用していました。ASP.netは***************一部のユーザーエージェント
.Netは、その情報だけに基づいてポストバックに必要なコードを生成していませんでした。
しかし、iPhoneや他のマルチメディアデバイスがjavascriptを解釈できるので、ASP.netはサーバーの生成に依存するすべてのアプリケーションを実行するためJavaScriptを実行しているため実行できません。
コミュニティで許可されている場合は正式な質問に変更したい... ASP.netが特定のブラウザ用のJavaScriptを生成しないのはなぜですか、どうすればこの「機能」をオフにすることができますか?
***************エンド編集2 ***************
私は奇妙な問題を持っています。私は仕事で私のコンピュータに私のリモートホストからのいくつかの作業コードをコピーしました。私はページを使用しようとすると、私はいくつかの出力ページのソースは、確かに何もサーバー側ではJavaScriptを発生していないがあると私はjavascriptのエラー
__doPostBack is not defined
javascript:__doPostBack('ctl00$ContentPlaceHolder1$login','')()()
を取得しています。
私は単純なページを作成してみました:
<%@ 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>
分離コード:
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
は同じエラーを取得します。
私はApp_Code、global.asax、web.configのすべてをクリアして、autopostback = trueのテキストボックスを追加しました。アイデアがありません。
誰もがここで何が起こっているかについていくつかの光を当てることができますか?
*************詳細情報*************** 私はIEですべてをもう一度試しましたが、期待どおりに動作します。ページソースは示しています
<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>
Firefoxでソースのみ示しているが:メモ帳でのデスクトップと開口部にWebページを保存する
<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwUKLTkxNTA2MDE2NWRkxhZMwlMVwJprcVsvQLJLrTcgaSM=" />
<input type="hidden" name="__EVENTVALIDATION" id="__EVENTVALIDATION" value="/wEWAwK20LZAAuzRsusGAsz0+6YPxxO+Ewv1XsD5QKJiiprrGp+9a3Q=" />
は同じことを明らかに...
私はいくつかの調査をしています...それはweb.configまたはmachine.configのセクションで修正できるもののようです。デフォルトでは未知のブラウザは古いブラウザのように扱われています。 –
Birk