2011-12-14 4 views
0

Этот код ниже, сидя на ASP.Net приложение на Site.Mater ....Ajax JSon несколько параметров

мне нужно пройти еще два параметра со страницы default.aspx, один осины: этикетки и один asp: textbox

Что это самый простой способ сделать это?

Благодаря

 <script type="text/javascript"> 
     $(function() { 
       $(".tb").autocomplete({ 
       source: function (request, response) { 
        $.ajax({ 
         url: "TestWebService.asmx/FetchList", 
         data: "{ 'testName': '" + request.term + "'}", 
         dataType: "json", 
         type: "POST", 
         contentType: "application/json; charset=utf-8", 
         dataFilter: function (data) { return data; }, 
         success: function (data) { 
          response($.map(data.d, function (item) { 
           return { 
            value: item.Name 

           } 
          })) 
         }, 
         error: function (XMLHttpRequest, textStatus, errorThrown) { 
          alert(textStatus); 
         } 
        }); 
       }, 
       minLength: 2 

      }); 
     }); 

ответ

2

В вашем JQuery автозаполнения, Вам нужно изменить параметр data к этому:

data: "{ 'testName': '" + request.term + "' ,lbl: '" + $(".lblClass").text() + "' ,txt: '" + $(".txtClass").val() + "'}" 

А затем изменить метод сервиса, как это:

[WebMethod] 
public List<string> FetchList(string testName, string lbl, string txt) 
{ 
    //... 
} 


Примечание: .lblClass и .txtClass являются классами ASP: Lable и ASP: TextBox соответственно.

+0

Спасибо, это здорово ... но откуда вы знаете, какое текстовое поле или ярлык пройти? (У меня есть несколько текстовых полей и меток на странице default.aspx) –

+0

Самый простой способ - присвоить им имя класса. – yek

+0

Не могли бы вы рассказать мне, как это сделать? –

Смежные вопросы