2010-07-22 70 views
1

我正在玩MVC 2,並試圖將文本框連接到Microsoft AjaxToolkit AutoCompleteBehavior。Ajax工具包和MVC 2

我無法獲得Java腳本觸發。本來我以爲我的scrpt引用是錯誤的,但已經將腳本指向了CDN版本。

它看起來像我從來沒有進入Sys.Application.add_init(函數(){這裏創建我的對象。

任何人都可以看到,如果我失去了一些東西簡單。或者我只是做錯了?

<script src="http://ajax.microsoft.com/ajax/act/40412/extended/ExtenderBase/BaseScripts.js" type="text/javascript"></script> 
    <script src="http://ajax.microsoft.com/ajax/act/40412/extended/Common/Common.js" type="text/javascript"></script> 
    <script src="http://ajax.microsoft.com/ajax/act/40412/extended/Animation/Animations.js" type="text/javascript"></script> 
    <script src="http://ajax.microsoft.com/ajax/act/40412/extended/Animation/AnimationBehavior.js" type="text/javascript"></script> 
    <script src="http://ajax.microsoft.com/ajax/act/40412/extended/PopupExtender/PopupBehavior.js" type="text/javascript"></script> 
    <script src="http://ajax.microsoft.com/ajax/act/40412/extended/Compat/Timer/Timer.js" type="text/javascript"></script> 
    <script src="http://ajax.microsoft.com/ajax/act/40412/extended/AutoComplete/AutoCompleteBehavior.js" type="text/javascript"></script> 

    <script type="text/javascript"> 
    Sys.Application.add_init(function() { 
    $create(Sys.Extended.UI.AutoCompleteBehavior 
    , { "delimiterCharacters": "" 
    , "serviceMethod": "ProductNameSearch" 
    , "servicePath": "/ProductService.asmx" 
    , "minimumPrefixLength": 1 
    } 
    , null 
    , null 
    , $get("query")); 
    });  



</script> 
<script src="/Scripts/MicrosoftAjax.js" type="text/javascript"></script> 
<script src="/Scripts/MicrosoftMVCAjax.js" type="text/javascript"></script> 

<%using (Ajax.BeginForm("ProductSearchAC" 
    , new AjaxOptions { UpdateTargetId = "results" })) 
    { %> 
    <%=Html.TextBox("query",null, new {size=40}) %> 
    <input type="submit" /> 
    <%} %> 

<div id="results"> 


</div> 

回答

2

貌似唯一缺少的之前任何AjaxToolKit的是一個腳本引用MicrosoftAjax.js引用

<script src="../../Scripts/MicrosoftAjax.js" type="text/javascript"></script> 

現在我已經更新了我的代碼用L atest AjaxToolKit javascripts,它一切正常。萬歲!

<script src="../../Scripts/MicrosoftAjax.js" type="text/javascript"></script> 
    <script src="../../Scripts/MicrosoftAjaxToolkit/ExtenderBase/BaseScripts.js" type="text/javascript"></script>  
    <script src="../../Scripts/MicrosoftAjaxToolkit/Common/Common.js" type="text/javascript"></script>  
    <script src="../../Scripts/MicrosoftAjaxToolkit/Animation/Animations.js" type="text/javascript"></script> 
    <script src="../../Scripts/MicrosoftAjaxToolkit/PopupExtender/PopupBehavior.js" type="text/javascript"></script> 
    <script src="../../Scripts/MicrosoftAjaxToolkit/Animation/AnimationBehavior.js" type="text/javascript"></script> 
    <script src="../../Scripts/MicrosoftAjaxToolkit/Compat/Timer/Timer.js" type="text/javascript"></script>  
    <script src="../../Scripts/MicrosoftAjaxToolkit/AutoComplete/AutoCompleteBehavior.js" type="text/javascript"></script> 

一個感謝斯蒂芬·瓦爾特誰擁有關於AjaxToolkit和MVC http://stephenwalther.com/blog/archive/2008/08/24/asp-net-mvc-tip-37-create-an-auto-complete-text-field.aspx檢查出來一些非常好的教程。