【问题标题】:How to Diplay "No result Found " in Autocomplete using $.getJSON如何使用 $.getJSON 在自动完成中显示“未找到结果”
【发布时间】:2016-07-28 07:59:10
【问题描述】:

我想在响应为空时显示“未找到结果”消息。在某些情况下,当后端会话当时过期时,它会返回登录页面,但我需要 json 数据,所以如何处理这个 html 数据。

    $( "#customers_name" )
  .bind( "keydown", function( event ) {
    if ( event.keyCode === $.ui.keyCode.TAB &&
        $( this ).autocomplete( "instance" ).menu.active ) {
      event.preventDefault();
    }
  })
  .autocomplete({
    source: function( request, response ) {
      $.getJSON( "ajax_functions.php", {
        term: extractLast( request.term ),
        console: $('select[name="console"] option:selected').val(),
        call: 'getCustomersEmailList',
        nmsAdmin: '<?php echo tep_session_id();?>'
      }, response );
    },
    change: function (event, ui) {
        if(!ui.item){
            $("#customers_name").val("");
        }
    },
    focus: function() {

      return false;
    },
    select: function( event, ui ) { 
      var customer_id = ui.item.customer_id;
      var customer_email = ui.item.customerEmail;
      console.log(ui);
      $('#customer_id').val(customer_id);
      $('#customer_email').val(customer_email);
      var terms = split( this.value );

      terms.pop();

      terms.push( ui.item.value );

      terms.push( "" );
      this.value = terms.join( "" );
      return false;
    }
});

【问题讨论】:

标签: jquery


【解决方案1】:

我已经编辑了您的代码并且对我来说工作正常。请检查下面的代码。

$( "#customers_name" )
  .bind( "keydown", function( event ) {
    if ( event.keyCode === $.ui.keyCode.TAB &&
        $( this ).autocomplete( "instance" ).menu.active ) {
      event.preventDefault();
    }
  })
  .autocomplete({
    source: function( request, response ) {
      $.getJSON( "ajax_functions.php", {
        term: extractLast( request.term ),
        console: $('select[name="console"] option:selected').val(),
        call: 'getCustomersEmailList',
        nmsAdmin: '<?php echo tep_session_id();?>',
        dataType:'json',
      },response ).fail(function(jqXHR, status, error){ document.location.href='login.php'; });
    },
    response: function(event, ui) {
        console.log(ui.content);
        if (ui.content.length === 0) {
            alert("No results found");
        }
    },
    change: function (event, ui) {
        if(!ui.item){
            $("#customers_name").val("");
        }
    },
    focus: function() {

      return false;
    },
    select: function( event, ui ) { 
      var customer_id = ui.item.customer_id;
      var customer_email = ui.item.customerEmail;
      console.log(ui);
      $('#customer_id').val(customer_id);
      $('#customer_email').val(customer_email);
      var terms = split( this.value );

      terms.pop();

      terms.push( ui.item.value );

      terms.push( "" );
      this.value = terms.join( "" );
      return false;
    },
    error : function() { document.location.href='login.php';}
});

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-28
    • 1970-01-01
    • 1970-01-01
    • 2013-10-09
    • 1970-01-01
    相关资源
    最近更新 更多