2013-04-02 5 views
0

В настоящее время я изменяю готовый сценарий самозахвата php/jQuery. Я борюсь с тем, чтобы сценарий работал с несколькими полями ввода текста. Первоначально он был создан для работы с полем ONE.Получить сфокусированный идентификатор поля формы в jQuery

Вот Originale скрипт и код формы:

function suggest(inputString){ 
    if(inputString.length == 0) { 
     $('#suggestions').fadeOut(); 
    } else { 
    $('#city').addClass('load'); 
     $.post("autosuggest.php", {queryString: ""+inputString+""}, function(data){ 
      if(data.length >0) { 
       $('#suggestions').fadeIn(); 
       $('#suggestionsList').html(data); 
       $('#city').removeClass('load'); 
      } 
     }); 
    } 
} 

function fill(thisValue) { 
    $('#city').val(thisValue); 
    setTimeout("$('#suggestions').fadeOut();", 0); 
} 

подход изменить сценарий для работы с несколькими полями ввода, на мой взгляд, было бы получить идентификатор сфокусированного элементов форм, а затем сделать что-то например:

function getFocusID() { 
    // get the focused form field id here 
} 

if(focusedID == "city") { 
    //Script for form field with "city" as id 

    function suggest(inputString){ 
     if(inputString.length == 0) { 
      $('#suggestions').fadeOut(); 
     } else { 
     $('#city').addClass('load'); 
      $.post("autosuggest.php", {queryString: ""+inputString+""}, function(data){ 
       if(data.length >0) { 
        $('#suggestions').fadeIn(); 
        $('#suggestionsList').html(data); 
        $('#city').removeClass('load'); 
       } 
      }); 
     } 
    } 

    function fill(thisValue) { 
     $('#city').val(thisValue); 
     setTimeout("$('#suggestions').fadeOut();", 0); 
    } 
} // code for input id "city" END 

// And now create if else statements for the other 4 input text fields, filling them with the code above. 

Я думаю, правильно здесь? Или есть ли еще более эффективный способ сделать это? И если это правильный подход, как мне получить идентификатор inpud сфокусированного текстового поля ввода?

ответ

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