2010-12-13 2 views
1

Я использую ASPNET MVC 2.0. Я пытаюсь передать значение из функции View to Controller с помощью функции jquery .ajax. Моя функция JQuery является:

$(document).ready(function() { 
    $("#Search").click(function(event) { 

     var searchString = $("#TraderSearch").val();    
     $.ajax({ 
      type: 'POST', 
      url: '/Build/SearchTrader', 
      data: "{strData : '" + searchString + "' }", 
      contentType: 'application/json; charset=utf-8', 
      dataType: 'json', 
      success: function(ResultList) { 
       var contents = ""; 
       var count = 0; 
       $(ResultList).each(function() { 
       contents = contents + '<tr><td>' + ResultList[count].Name + '</td><td>' + ResultList[count].Value + 
        '</td><td><a class="edit"><img src="../../html/images/Edit.gif" width="14" height="14" alt="edit" /></a></td></tr>'; 
        count = count + 1; 
       }); 
       $("#SerachResultList").append(contents); 
       alert("{strData : '" + searchString + "' }"); 
      }, 
      error: function(XMLHttpRequest, textStatus, errorThrown) { 
       alert("Error: " + textStatus + "\n" + errorThrown); 

      } 
     }); 


    }); 
}); 

И моя функция контроллера заключается в следующем:

public ActionResult SearchTrader(string strData) 
    { 


     //Function to search DB based on the string passed 

     return Json(lstDictObject); 
    } 

Моя проблема заключается в том, что я не могу получить значение в мой контроллер. Я получаю strData как «null». Я думаю, что есть ошибка сома в том, как я пытаюсь передать ценность? Кто-нибудь может меня исправить?

Спасибо заранее,

Vipin Менон

+0

Попробуйте использовать JSON: '' {"strData": "'+ searchString +'"} '', любая разница? –

+0

это может быть проблема маршрутизации. по умолчанию «вероятно» установлено значение id. новый маршрут может помочь вам. –

ответ

0

попробовать это:

data: "strData = " + searchstring 
+0

почему -1? .... –

+0

Не мое голосование, но это неверно на нескольких уровнях, дополнительный интервал и отсутствие кодирования в основном –

0

Я считаю, что должно работать:

data: { strData: searchstring } 

Котировки вызвали тот же вопрос в сценарии Я просто испытал.

Вы также должны проверить правописание на своем «#SerachResultList», если это ваш фактический код.