Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Paulo Roberto Start Corp

Chamar funçao Jquery

Recommended Posts

Boa tarde... estou com o seguinte problema

peguei este auto complete que esta funcionando muito bem

 

ele funciona assim.. eu começo a digitar ele chama o arquivo busca e me da as listas de nomes.. então eu clico em cima do nome e ele faz um auto complete

tudo ok

 

mais quando eu digito um nome e nao clico em cima dele( mesmo que o nome exista) ele nao faz o Callback1

 

bom... quero usar esta funçao para digiar um serial de um dispositivo ou leitor de codigo de barras

e quando eu clicar fora do campo... ele preencher os outros campos com Callback1

 

Lembrando que tudo funciona se eu clicar em cima do nome para selecionar...

 

mais eu usando um leitor de codigo de barras... vai ter que funcionar com um tab ou ao sair do campo

 

deu pra entender ???????

 

 

<script type="text/javascript">
$(document).ready(function()
{
	$('#cod_b_mod').simpleAutoComplete('pecas/localizar.php',{
	autoCompleteClassName: 'autocomplete',
	selectedClassName: 'sel',
	attrCallBack: 'rel',
	identifier: 'codigobarras'
	},Callback1);
   	});

function Callback1( par )
{
	$("#modelo").val( par[0] );
	$("#obs").val( par[1] );
	$("#serial0").val( par[2] );
	$("#capacidade").val( par[3] );
	$("#fabricante").val( par[4] );
	$("#interfac").val( par[5] );
}

</script>

 

 

 

 

<input name="cod_b_mod" type="text" id="cod_b_mod" style="width:150px;" onkeypress ="Pd_maiusculo(this);" onkeydown="javascript:if(event.keyCode == 13){ return false; }"/>

Compartilhar este post


Link para o post
Compartilhar em outros sites

cara.. externamente não tem muito oq fazer.

 

dá uma olhada na documentação e no código desse plugin: simpleAutoComplete

lá onde ele dispara com o onclick, tem q fazer disparar no onblur também.

Compartilhar este post


Link para o post
Compartilhar em outros sites

cara.. externamente não tem muito oq fazer.

 

dá uma olhada na documentação e no código desse plugin: simpleAutoComplete

lá onde ele dispara com o onclick, tem q fazer disparar no onblur também.

 

 

Ajuda ai....

 

(function($){
       $.fn.extend(
       {
               simpleAutoComplete: function( page, options, callback )
               {
                       if(typeof(page) == "undefined" )
                       {
                               alert("simpleAutoComplete: Você deve especificar a página que processará a consulta.");
                       }

                       var classAC = 'autocomplete';
                       var selClass = 'sel';
                       var attrCB = 'rel';
                       var thisElement = $(this);

                       $(":not(div." + classAC + ")").click(function(){
                               $("div." + classAC).remove();
                       });

                       thisElement.attr("autocomplete","off");

                       thisElement.keyup(function( ev )
                       {
                               var getOptions = { query: thisElement.val() }

                               if( typeof(options) == "object" )
                               {
                                       classAC = typeof( options.autoCompleteClassName ) != "undefined" ? options.autoCompleteClassName : classAC;
                                       selClass = typeof( options.selectedClassName ) != "undefined" ? options.selectedClassName : selClass;

                                       attrCB = typeof( options.attrCallBack ) != "undefined" ? options.attrCallBack : attrCB;
                                       if( typeof( options.identifier ) == "string" )
                                       getOptions.identifier = options.identifier;

                                       if( typeof( options.extraParamFromInput ) != "undefined" )
                                       getOptions.extraParam = $( options.extraParamFromInput ).val();
                               }

                               kc = ( ( typeof( ev.charCode ) == 'undefined' || ev.charCode === 0 ) ? ev.keyCode : ev.charCode );
                               key = String.fromCharCode(kc);

                               //console.log(kc, key, ev );

                               if (kc == 27)
                               {
                                       $('div.' + classAC).remove();
                               }
                               if (kc == 13)
                               {
                                       $('div.' + classAC + ' li.' + selClass).trigger('click');
                               }
                               if (key.match(/[a-zA-Z0-9_\- ]/) || kc == 8 || kc == 46)
                               {
                                       $.get(page, getOptions, function(r)
                                       {
                                               $('div.' + classAC).remove();
                                               autoCompleteList = $('<div>').addClass(classAC).html(r);
                                               if (r != '')
                                               {
                                                       autoCompleteList.insertAfter(thisElement);

                                                       var position = thisElement.position();
                                                       var height = thisElement.height();
                                                       var width = thisElement.width();

                                                       $('div.' + classAC).css({
                                                               'top': ( height + position.top + 6 ) + 'px',
                                                               'left': ( position.left )+'px',
                                                               'margin': '0px'
                                                       });

                                                       $('div.' + classAC + ' ul').css({
                                                               'margin-left': '0px'
                                                       });

                                                       $('div.' + classAC + ' li').each(function( n, el )
                                                       {
                                                               el = $(el);
                                                               el.mouseenter(function(){
                                                                       $('div.' + classAC + ' li.' + selClass).removeClass(selClass);
                                                                       $(this).addClass(selClass);
                                                               });
                                                               el.click(function()
                                                               {
                                                                       thisElement.attr('value', el.text());

                                                                       if( typeof( callback ) == "function" )
                                                                               callback( el.attr(attrCB).split('|') );

                                                                       $('div.' + classAC).remove();
                                                                       thisElement.focus();
                                                               });
                                                       });
                                               }
                                       });
                               }
                               if (kc == 38 || kc == 40){
                                       if ($('div.' + classAC + ' li.' + selClass).length == 0)
                                       {
                                               if (kc == 38)
                                               {
                                                       $($('div.' + classAC + ' li')[$('div.' + classAC + ' li').length - 1]).addClass(selClass);
                                               } else {
                                                       $($('div.' + classAC + ' li')[0]).addClass(selClass);
                                               }
                                       }
                                       else
                                       {
                                               sel = false;
                                               $('div.' + classAC + ' li').each(function(n, el)
                                               {
                                                       el = $(el);
                                                       if ( !sel && el.hasClass(selClass) )
                                                       {
                                                       el.removeClass(selClass);
                                                       $($('div.' + classAC + ' li')[(kc == 38 ? (n - 1) : (n + 1))]).addClass(selClass);
                                                       sel = true;
                                                       }
                                               });
                                       }
                               }
                               if (thisElement.val() == '')
                               {
                                       $('div.' + classAC).remove();
                               }
                       });
               }
       });
})(jQuery);

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.