Autor | Zpráva | ||
---|---|---|---|
Jack06 Profil |
#1 · Zasláno: 1. 2. 2009, 19:58:59
Chci se optat jak udělat když napíše třeba 2písmenka v inputu, aby mi to vyhledalo z pole $uzivatele nick zacinajici na tyto pismenka.
Viz jakýkoliv chat.. Zkouším to, ale spíše mi to hází na další input místo aby to spustilo script :-D (jako tableindex, ale ten nemám nikde v inputu použitý) Díky moc |
||
Časová prodleva: 4 dny
|
|||
Jack06 Profil |
#2 · Zasláno: 5. 2. 2009, 17:59:08
Nalezl jsem tento kód. Při kliknutí vyzvedne z pole users jméno, se shodným začátkem napsaných písmen do pole input.
Zajímalo by mě, jak udělat aby například když do inputu kliknu ar a na tyto písmena bude začínat více jmen, tak aby po opětovném stisknutí tab se to změnilo na další z výběru. Díky předem. formulář: <body onLoad="document.fr.textik.focus();"> <form name="fr" action="./form/fo_form.php?rid=<? echo $_GET['rid'];?>" method="post"> <table> <tr> <td><input type="text" name="textik" size="60" onkeydown="if(event.keyCode==9){dopln(); this.setSelectionRange(this.value.length, this.value.length); return false;}" /></td> </tr> </table> </form> $nick= $nick.",\"".$s_r[1]." \""; <SCRIPT language="JavaScript" type="text/javascript"> var users = new Array (""<?php echo $nick; ?>); </SCRIPT> </body> -$nick jde o zápis "nick1","pepa","franta",atd vybíráno z mysql javascript s funkcí: function dopln() { dvojtecka = ''; var slovo = p_slovo(); var xxx = 0; if(slovo == -1) { last_delka=0; } else { xxx = hledej(slovo.toLowerCase()); } if (xxx == 1) document.fr.textik.focus(); } function p_slovo() { var pole = document.fr.textik.value.split(' '); pole.reverse(); if (pole.length==1) dvojtecka=': '; if (!pole[0]) return(-1); else return(pole[0]); } function hledej(slovo) { var i,user; var delka = slovo.length; var delka2 = delka; var str = document.fr.textik.value; for (i=0;i<users.length;i++) { user=users[i].substring(0,delka).toLowerCase(); if (slovo == users[i].toLowerCase()) { slovo = slovo.substring(0,last_delka); delka = slovo.length; continue; } if (user == slovo) { document.fr.textik.value = str.substring(0,str.length-delka2)+users[i].substring(0,users[i].length-1) +dvojtecka; last_delka = delka; return(1); } } return(-1); } |
||
Časová prodleva: 15 let
|
0