不要在焦点上展开RadComboBox DropDown

时间:2013-12-11 13:25:08

标签: asp.net telerik client-side radcombobox

RadComboBox(自动填充)在聚焦时正在扩展下拉列表。我希望在自动完成框中没有文本时阻止它​​。

我试过这样的事情

function OnClientTextChange (sender, eventArgs) {
  if (false && sender.get_text() == "") {
  showDropDown(sender, null);
}

但是" OnClientTextChange不会触发,直到用户点击Enter或在组合框外部点击。"

当文本为空时,我需要采用不同的方法来阻止扩展下拉列表。

2 个答案:

答案 0 :(得分:2)

我通过读取生成并保存在隐藏字段中的json值来修复它

function OnClientDropDownOpening(sender, eventArgs) {
    if ($("#RadComboBox1_ClientState").val() != "") {
       var obj = jQuery.parseJSON($("#RadComboBox1_ClientState").val());
       if (obj.text === "") {
         sender.set_cancel(true);
       }
    } else {
         eventArgs.set_cancel(true);
       }
  }

答案 1 :(得分:1)

我认为TextChanged事件是指自动完成文本框? OnClientTextChanged从客户端onblur事件触发,当另一个控件获得焦点时触发该事件。您正在寻找关键事件,无论是keydown,keyup还是keypress。当密钥事件(keydown / keyup / keypress)在自动完成时触发时,您可以显示下拉列表。