JQuery если заявление внутри веб-метода - PullRequest
1 голос
/ 05 июля 2019

Я использую веб-метод для автозаполнения текстового поля.Мне нужна некоторая помощь для jQuery, чтобы выбрать другой URL, если флажок установлен.

Текущий выбранный URL - это url: '<%=ResolveUrl("Default.aspx/GetInfo1") %>'.Если отмечен chksel1, он должен быть url: '<%=ResolveUrl("Default.aspx/GetInfo2") %>'

$(function() {
  $("[id$=txtA1]").autocomplete({
    source: function(request, response) {
      $.ajax({
        url: '<%=ResolveUrl("Default.aspx/GetInfo1") %>',
        data: "{ 'prefix': '" + request.term + "'}",
        dataType: "json",
        type: "POST",
        contentType: "application/json; charset=utf-8",
        success: function(data) {
          response($.map(data.d, function(item) {
            return {
              label: item.split('-')[0],
              val: item.split('-')[1]
            }
          }))
        },
        error: function(response) {
          alert(response.responseText);
        },
        failure: function(response) {
          alert(response.responseText);
        }
      });
    },
    select: function(e, i) {
      $("[id$=hfA1]").val(i.item.val);
      $("[id$=hfA1]").attr("id", i.item.key);
    },
    minLength: 1
  });
});

1 Ответ

1 голос
/ 05 июля 2019

Предполагая, что chksel1 является идентификатором флажка, вы можете использовать троичное выражение в JS на стороне клиента, чтобы задать URL-адрес на основе состояния свойства checked:

url: $('#chksel1').prop('checked') ? '<%= ResolveUrl("Default.aspx/GetInfo2") %>' : '<%= ResolveUrl("Default.aspx/GetInfo1") %>',
...