2015-12-15 3 views
3

Любой может сказать мне, как я могу использовать токенизацию в автозаполнении для множественного выбора, я делаю вас уверенным, что я хочу только с веб-службой asp.net с веб-службы My Код:Автозаполнение нескольких тегов в asp.net

$(function() { 
    // Web servcice javascript code for City 
    $("[id*=ctl00_ContentMain_TextBoxSkills]").autocomplete({ 
     source: function (request, response) { 
      $.ajax({ 
       url: '<%=ResolveUrl("~/WebServices/WebServiceSkills.asmx/GetAutoCompleteData")%>', 
       data: "{ 'username': '" + request.term + "'}", 
       dataType: "json", 
       type: "POST", 
       contentType: "application/json; charset=utf-8", 
       success: function (data) { 
        if (data.d.length > 0) { 
         response($.map(data.d, function (item) { 
          return { 
           label: item.split('-')[0], 
           val: item.split('-')[1] 
          }; 
         })) 
        } else { 
         response([{ label: 'No results found.', val: -1 }]); 
        } 
       } 
      }); 
     }, 
     select: function (e, u) { 
      if (u.item.val == -1) { 
       return false; 
      } 
     } 
    }); 
}); 

Я хочу использовать веб-службы для извлечения данных из базы данных и показать на переднем конце для множественного выбора

Web Service: 
DataTable dt = userRegistrationHelper.GetSkillsList(username); 
     DataRow[] rows = null; 
     rows = dt.Select(string.Format("SkillName = {0}", username)); 
     string[] result = new string[rows.Length]; 
     for (int i = 0; i <= rows.Length - 1; i++) 
     { 
      result[i] = rows[i]["SkillName"].ToString(); 
     } 
     return result; 

ответ

0
Autocomplete with multiple words or values with comma separated 

    $(function() { 
    $("[id*=ctl00_ContentMain_TextBoxSkills]").autocomplete({ 
    source: function(request, response) { 
    $.ajax({ 
    type: "POST", 
    contentType: "application/json; charset=utf-8", 
    url: '<%=ResolveUrl("~/WebServices/WebServiceSkills.asmx/GetAutoCompleteData")%>', 
    data: "{'username':'" + extractLast(request.term) + "'}", 
    dataType: "json", 
    success: function(data) { 
    response(data.d); 
    }, 
    error: function(result) { 
    alert("Error"); 
    } 
    }); 
    }, 
    focus: function() { 
    // prevent value inserted on focus 
    return false; 
    }, 
    select: function(event, ui) { 
    var terms = split(this.value); 
    // remove the current input 
    terms.pop(); 
    // add the selected item 
    terms.push(ui.item.value); 
    // add placeholder to get the comma-and-space at the end 
    terms.push(""); 
    this.value = terms.join(", "); 
    return false; 
    } 
    }); 
    $("[id*=ctl00_ContentMain_TextBoxSkills]").bind("keydown", function(event) { 
    if (event.keyCode === $.ui.keyCode.TAB && 
    $(this).data("autocomplete").menu.active) { 
    event.preventDefault(); 
    } 
    }) 
    function split(val) { 
    return val.split(/,\s*/); 
    } 
    function extractLast(term) { 
    return split(term).pop(); 
    } 
    }); 
+0

hello @Manish, Я использую этот код, указанный вами, но этот код вызывает мой метод веб-службы, давая мне ERROR – Aman

+0

, какая ошибка? можете ли вы объяснить –

+0

thnx за помощь @Manish, теперь я решил эту проблему. – Aman

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