私はページにTelerik RadComboBoxを持つWebページを持っています。このComboBoxのプロパティの1つはEmptyMessageで、アイテムが選択されていないときにコンボボックスにメッセージを入力します。私はコンボボックスを実行時にデータソースにバインドしています。何らかの理由でこのEmptyMessageを拭き取ります。私のデータアイテムを手元に置いて、そこに空のメッセージを残す方法はありますか?そしてそれを空のメッセージにデフォルト設定しますか?空の文字列をRadComboBoxに追加
答えて
Telerikで受け入れられている回答のように、クライアントサイドスクリプトを使用してテキストの編集を防止しているようです。
<telerik:Radcombobox ID="RadComboBox1" runat="server" AllowCustomText="True" EmptyMessage="-please select one-">
<Items>
<telerik:RadComboBoxItem runat="server" Text="Item1"></telerik:RadComboBoxItem>
<telerik:RadComboBoxItem runat="server" Text="Item2"></telerik:RadComboBoxItem>
</Items>
<script type="text/javascript">
function pageLoad()
{
var combo = $find("<%= RadComboBox1.ClientID %>");
var input = combo.get_inputDomElement();
input.onkeydown = onKeyDownHandler;
}
function onKeyDownHandler(e)
{
if (!e)
e = window.event;
e.returnValue = false;
if (e.preventDefault)
{
e.preventDefault();
}
}
</script>
'AppendDataBoundItems'がtrueに設定されていますか?
もう1つの方法は、バインド直後にコンボボックスに項目を追加してから、選択して項目を設定することです。
これは最終的に@ teの答えが提供するものです。 –
@rockinthesixstringこの回答が投稿されてから4ヶ月後にシンプルコードを提供したようです... – Nick
回答が見つかりました。好奇心が強い人や誰かが似たようなことをする必要がある場合は、AllowCustomTextプロパティをTrueに設定する必要があります。これは私の問題を修正しました。
これは、ユーザーが強制的にではなく独自のカスタムテキストを入力できるため、多くの場合、良い解決策ではありません既存のアイテムの1つを選択します。私はほとんどの場合、このタイプの振る舞いは望ましくないと思います。 –
カスタムテキストを許可するのは正解ではありません。ほとんどの場合、あなたが提供する値を使用できるようにしたいだけです。 「正しい」答えは@ teの答えをご覧ください。 –
あなたはどうすれば私の答えをマークできますか?私はその質問をしている人です。私の答えは私が持っていた問題を解決しました。 – Icemanind
RadComboBox1.Items.Insert(0, New RadComboBoxItem("Select a continent"))
これは、コンボボックスの最初の項目として「大陸の選択」を追加します。
この問題は、EmptyMessageスタイルを使用しないことになります。なぜRadComboBoxを使用するのか。テンプレートを使用している場合を除いて、古いasp:DropDownListに戻ってもかまいません。 :P – Grank
これは私が知っている方法ですが、@Grank - 私は@ teの方法を使用し、それは驚異的です。「なぜRadComboBoxを使用するのか」と尋ねると、いいオートドロップダウンリストでは得られない優れたオートコンプリート/オートサジェスト機能のためです。 –
だけEmptyMessageプロパティを設定し、設計時にはこの
ComboBox.Text = String.Empty
を置きます。
<telerik:RadComboBox ID="ddlCategory" EmptyMessage="-Select-" runat="server" Width="120px" DropDownWidth="100px" AllowCustomText="true">
</telerik:RadComboBox>
実行時に次のコードが動作します。
ddlCategory.Text = "";
ddlCategory.ClearSelection();
- 1. RadComboBoxにデフォルトアイテムを追加
- 2. 文字列を分割して文字列の間に空白を追加
- 3. Python - 空文字を文字列に追加してデータベースに列を追加する方法
- 4. RadComboBox上部にアイテムを追加する
- 5. PHP:文字列に空白を追加する
- 6. 文字列に空白を追加する
- 7. 追加文字列
- 8. 追加クエリ文字列クエリ文字列
- 9. Pythonで空の文字列の条件を追加する
- 10. PHPの文字列内に文字列を追加する
- 11. C++文字列の追加
- 12. LinkedListに文字列のリストを追加
- 13. 配列の(文字列)要素内に空白を追加する
- 14. Cshが文字列を配列に追加する、空白の問題
- 15. 太字で各文字列に一意の文字を追加
- 16. 文字列内の各文字に数字を追加する
- 17. C#文字のx個の文字列を文字列に追加する
- 18. 文字列をconst文字列に&C++で追加する
- 19. 文字列を文字列リストに追加する方法
- 20. ランダムな文字列にスタティック文字列を追加するRuby?
- 21. 文字列ポインタに文字列を追加する
- 22. NSXmlParser文字列に文字列を追加しますか?
- 23. 文字列を文字列に追加する方法
- 24. Java文字列を文字列に追加する
- 25. 文字列に部分文字列を追加する方法
- 26. Python:forループに空の文字列を追加するのを避けるには?
- 27. MySQLストアドファンクション - 追加文字列
- 28. SQL追加文字列
- 29. この文字列に単語の間に空白を追加する
- 30. SQLサーバの文字列の前に(文字を追加)
これは悲しいことですが、これはそれとは関係ありません。 EmptyMessageは、何らかの理由でAllowCustomTextがtrueに設定されている場合にのみ使用されます。ユーザーがカスタムテキストを入力することを許可せずにEmptyMessageスタイルを使用することはできません。 – Grank