2008-11-25 114 views
0

我有一个网页,用户将输入他们的地址。他们将在级联下拉列表中选择他们的国家和地区。我想为他们的城市提供一个自动完成的文本框,但我希望对国家和地区的选择具有上下文敏感性。我只是使用了另一个级联下拉列表,但城市数量超过了列表项的最大数量。级联到自动填写文本框

任何建议或凉爽的代码尖塔可以帮助我吗?

回答

0

我刚刚发现以下blog帖子,看起来至少接近你想要的。

他们管理它使用下面的JavaScript函数:

function initCascadingAutoComplete() { 
     var moviesAutoComplete = $find('autoCompleteBehavior1'); 
     var actorsAutoComplete = $find('autoCompleteBehavior2'); 
     actorsAutoComplete.set_contextKey(moviesAutoComplete.get_element().value); 
     moviesAutoComplete.add_itemSelected(cascade); 

     // setup initial state of second flyout 
     if (moviesAutoComplete.get_element().value) { 
      actorsAutoComplete.get_element().disabled = false; 
     } else { 
      actorsAutoComplete.get_element().disabled = true; 
      actorsAutoComplete.get_element().value = ""; 
     } 
    } 

    function cascade(sender, ev) { 
     var actorsAutoComplete = $find('autoCompleteBehavior2'); 
     actorsAutoComplete.set_contextKey(ev.get_text()); 
     actorsAutoComplete.get_element().value = ''; 
     if (actorsAutoComplete.get_element().disabled) { 
      actorsAutoComplete.get_element().disabled = false; 
     } 
    } 
    Sys.Application.add_load(initCascadingAutoComplete); 

调用上的级联行为父控件的add_itemSelected方法级联功能。

它们将一个自动完整扩展器的内容级联到另一个自动完成扩展器,而不是采用级联下拉列表,但希望您可以重用某些想法。