いくつかの背景
そのため、データの自動補間を行うWebアプリケーションの機能強化を完了していました。ユーザーが入力するテキストボックスはいくつかあり、その間にある他のテキストボックスには値が自動的に計算されます。自動的に計算された値を受け取るテキストボックスは、ユーザーの変更を防ぐためにreadOnlyである必要がありますが、無効にすることはできません。無効にしないと、ポストバックで送信されません。これらの各テキストボックスの横にもチェックボックスがあり、ユーザーは意識的にチェックボックスをオンにしてフィールドを書き込み可能にし、補間された値を上書きできるようにします。
ブラウザ:IE 7(これが他のブラウザでどのように動作するかわからない)
問題
readOnly
JavaScriptを使用してテキストボックスのプロパティを設定すると、テキストボックスの値は次の形式で送信されます。サーバー側(ASP.NET)myTextBox.Text
で確認できますRequest.Form("myTextBox")
。
要素を設定ReadOnly="true"
し<asp:TextBox />
、JavaScriptメソッドを使用しない場合、テキストボックスの値はから利用できませんmyTextBox.Text
(私はそれViewState
がに到達したことはないと思います)が、フォームで送信されます:Request.Form("myTextBox")
値があります。
私の質問
一体何が起こっているのですか?これは仕様によるものですか?これはブラウザの問題ですか?バグを見つけましたか?アプリを機能させるために、ページの読み込み時にテキストボックスの書き込み可能性を最初に無効にするために、追加のJavaScriptが必要になるのは面倒です。
ありがとう!