テキストボックスがあります。そのonclick iamは、calendar.Texboxを呼び出すためのjavascript fnを呼び出して読み取り専用です。テキストボックスカレンダーをクリックすると、値がテキストボックスに表示されます。しかし、保存するためのコードを書いたボタンをクリックすると、テキストボックスに値が表示されません。その理由は何でしょうか?読み取り専用のテキストボックスで値を取得する方法
答えて
人は、日付を入力するためにカレンダーコントロールを使用する必要があるように、テキストボックスが無効になっていると思いますか?テキストボックスは、選択した日付を表示するためのものですか?
テキストボックスを読み取り専用(クライアント側が無効)にしたい場合は、サーバー上で処理したい値が隠された入力を持っている可能性があります。したがって、ページへの追加入力を追加します。使用する
<asp:HiddenField ... runat="server" />
したがって、読み取り専用のテキストボックスを更新するクライアント側のコードは、非表示の入力も更新します。
readonlyプロパティがtrueの場合は、.csコールが中断されません。あなたはいつものようにこれを使用することができますがあり、私もこの問題を抱え
lblBraid.Text = txtBraid.Text;
:onClickの機能や何かにこれらを入れては.csページの
<asp:TextBox ID="txtBraid" runat="server" Text="Im sooo readonly" ReadOnly="True"></asp:TextBox>
<asp:Label ID="lblBraid" runat="server" Text="Im gonna change, i promise"></asp:Label>
:ここ
があなたの入力です本当に簡単な回避策プロパティオプションを使用してReadOnlyテキストボックスを作成する代わりに。このコードを追加することの背後にあるコードを通してそれを実行します。
YourTextBox.Attributes.Add("readonly", "readonly");
完璧に働いた、ありがとう。 –
あなたは
Request.Form[YourTextBox.UniqueID]
これは顕著な答えでなければなりません。ありがとう! –
非常に良いキャッチを使用して値を取得することができます! +1 – Cerebrus
ダーリンは、すべての一般的なブラウザでのみサポートされていますか?この属性については知らなかった。 – nickytonline
これは動作しませんが、デザイナーモードではなく読み込み時のコードビハインドで読み取り専用プロパティーを設定しないところでの提案は何ですか。 –