2011-06-27 15 views
1

最初のページが入力を受け付け、ボタンのクリックがユーザーを次のページにリダイレクトする単純なASP.Netアプリケーションを作成しました。
これは他のすべてのブラウザ(IE、Opera、Safari)で動作していますが、Firefoxでは何も起こりません。ボタンクリックでイベントが生成されず、ポストバックも発生していません。Firefoxエラー - document.allが定義されていません(WebUIValidation.js)

document.all is undefined
http://xxx/aspnet_client/system_web/2_0_50727/WebUIValidation.js
Line: 30
Line: 85

このエラーがWebUIValidation.jsに遭遇された機能は次のとおりです:

function ValidatorHookupControlID(controlID, val) { 
    if (typeof(controlID) != "string") { 
     return; 
    } 
    var ctrl = document.all[controlID]; 

....

function ValidatorGetValue(id) { 
    var control; 
    control = document.all[id]; 

Firefoxのエラーコンソールに見

は私に、このエラーを示しました。

....

助けてください!

答えて

1

これをweb.config <xhtmlConformance mode="Legacy"/>に追加し、クライアント側のバリデータがページに追加される方法とタイミングについての詳細はthis blog postをお読みください。

+1

おかげのように、代わりにdocument.allのののdocument.getElementByIdを使用するようにコードを変更してください。私は解決策を得た。この問題は、ページの検証コントロールのために発生しました。バリデータのEnableClientScriptプロパティをfalseにしました。 – KhD

+1

Khushboo、回答を返信として追加し、回答として選択する必要があります。同様の問題を抱えている次の人は、あなたがそれをどのように修正したかを知っています。あなたの修正を共有してくれてありがとう! – Zachary

1

function ValidatorHookupControlID(controlID, val) { 
    if (typeof(controlID) != "string") { 
     return; 
    } 
    var ctrl = document.getElementById(controlID); 
    //..... 
} 

と...返信用

function ValidatorGetValue(id) { 
    var control = document.getElementById(id); 
    //..... 
}