Hej!
Jag sitter och fnurlar på en kod som ska fungera på följande sätt:
- Användaren har ett visst antal totala Creds. Dessa totala creds ska användaren kunna fritt disponera i flera textfält, som renderas av PHP kod vilket gör att det kan vara alltifrån 1 till 10.
För exemplet tar vi 3 textfält.
- Om användaren har totalt 100 Creds, och skriver in 60 i första fältet så ska den totala summan minskas med just 60. Om Användaren sedan skriver in 30 i nästa fält återstår 10 kvar. Om nu användaren skulle ange MER än 10, låt oss säga 20 får han ett felmeddelande och fältetsinput ändras automatiskt till hans nuvarande maxbelopp (i detta fall 10).
Försöker göra det så tydligt som möjligt. Och nu den kod jag än så länge trixat lite med (en variant av jojoxx's kod, still going strong :) ):
function quickTot(obj,dispobj,max_wgr){
if(obj.value.length>max_wgr){
alert('Du har överskridit din maxinsats; '+max_wgr+'.');
obj.focus();
}
dispobj.value=max_wgr-obj.value;
}
---
<li id=\"wager\">Insats<br/><input type=\"text\" name=\"wager_".$quick_id."\" size=\"3\" onkeyup=\"quickTot(this,this.form.display,100);\" onkeypress=\"quickTot(this,this.form.display,100);\" /></li>
<input type=\"text\" name=\"display\" size=\"4\" value=\"100\" disabled=\"disabled\" onfocus=\"this.blur();\">
Det som händer med ovanstående kod är att när man skriver i ett fält så sänks värdet med det man angett. Men går man på nästa fält, återställs maxbeloppet till i exemplet 100. Så varje fält fungerar individuellt, men de länkas inte samman till maxbeloppet.
Hur ska jag göra?
Fungerar som det ska.. men dock verkar inte den sista raden vilja vara med och leka. Jag vill ju ändra i det fältet där man skriver in en siffra som gör att summan överskrider antalet tillåtna (creds), till det maxtillåtna beloppet vid det tillfället.
Dvs denna rad: