2011-04-17 71 views
1

我有這樣的場景:ASP.NET MVC - 實現搜索行動的jQuery

的Site.Master


    ...    
    <%= Html.TextBox("ricerca") %> 
    <img src="" alt ="" id="search" /> 
    ... 

    <script type="text/javascript"> 
     $(function() { 
      $('#search').click(function() { 
       var valueSearch = $('#ricerca').val(); 
       Search(valueSearch); 
      }); 
     }); 
     function Search(valueSearch) { 
      $.ajax({ 
       type: "POST", 
       url: "/Home/Search", 
       data: "value=" + valueSearch 
      }); 
     } 

的HomeController


    [HttpPost] 
    public ActionResult Search(string value) 
    { 
     //...logic search 
     return View(); 
    } 

當我在正確調用搜索動作圖像點擊,但在「返回視圖();」之後不要加載搜索視圖(位於文件夾首頁)

爲什麼不顯示?

回答

1

在任何時候您都不會將從服務器返回的數據插入到文檔中。需要內$.ajaxsuccess callback發生:

$.ajax({ 
    type: "POST", 
    url: "/Home/Search", 
    data: "value=" + valueSearch, 
    success: function(data) { 
     alert(data); 
     $("#someDiv").html(data); 
    } 
}); 
+0

好吧,但我想加載整個搜索視圖。不僅html結果.. – 2011-04-17 11:33:36

+0

你的意思是你想通過ajax替換當前加載的頁面與搜索頁面?確切地說,是 – karim79 2011-04-17 12:14:56

+0

!我試着用Html.ActionLink,但我無法傳遞文本框的值。 – 2011-04-17 12:31:27