Venteliste i javascript
Hej, jeg har førsøgt at lave en venteliste, hvor det er muligt at flytte op og ned på folk. Har tilføjet to ekstra knapper, hvor den ene flytter en person helt til top, og den anden helt i bund. Mit probelm er at når jeg flytter en person f.eks helt i top, får personen der står i toppen den valgtes placering. Det skal være sådan at hvis man flytter en i top, skal den der stå i toppen bare rykke en placering ned... Håber i forstår :-)<?
include 'db.php';
?>
<html>
<head><title>Flytte rundt i select box</title>
<script language="JavaScript">
var sel;
var selo;
function checkSel ( frm ) {
sel = frm.model.selectedIndex;
selo = frm.model.options;
if ( 0 > sel ) {
alert( "Der skal vælges en person først" );
return false;
};
return true;
};
function checkDest ( dest ) {
if ( 0 >dest || dest >= selo.length ) {
alert( "Personen kan ikke flyttes" );
return false;
};
return true;
};
function ombyt ( fra, til ) {
var tmpTxt = selo[fra].text;
selo[fra].text = selo[til].text;
selo[til].text = tmpTxt;
var tmpVal = selo[fra].value;
selo[fra].value = selo[til].value;
selo[til].value = tmpVal;
return til;
};
function flytOp( frm ) {
if ( checkSel( frm ) && checkDest( sel-1 ) )
frm.model.selectedIndex = ombyt( sel, sel-1 );
};
function flytNed( frm ) {
if ( checkSel( frm ) && checkDest( sel+1 ) )
frm.model.selectedIndex = ombyt( sel, sel+1 );
};
function flytTop( frm ) {
if ( checkSel( frm ) && checkDest( sel ) )
seloBund = 0;
frm.model.selectedIndex = ombyt(seloBund,sel );
};
function flytBund( frm ) {
if ( checkSel( frm ) && checkDest( sel ) )
seloBund = frm.model.options.length - 1;
frm.model.selectedIndex = ombyt(sel,seloBund );
};
function pakResultat ( frm ) {
var skj = "";
selo = frm.model.options;
for (var i=0; selo.length>i; i++ )
skj += "|" +selo[i].value +"";
frm.skjultFelt.value = skj.substring(1);
return true;
}; //end pakResultat ( form object )
// --> </script>
</head>
<body>
<font size=2><b> Intern liste</b></font><br>
Arranger personerne ved at vælge og flytte op og ned
<form name="sfrm" method="post" action="?p=vente" onSubmit="return pakResultat(this);">
<table border="0" cellspacing="10">
<tr>
<td>
<select class="input" name="model" size="15">
<?
$sqlkate = mysql_query("select * from login order by sort ASC");
while ($rs = mysql_fetch_array($sqlkate)){
echo '<option value="'. $rs[id] .'">['.$rs[sort].'] '. $rs[fornavn] .' '. $rs[efternavn] .'</option>';
echo "\n";
}
?>
</select>
</td>
<td>
<p>
<img src="gfx/hop.jpg" onclick="flytOp(document.sfrm)" style="cursor:pointer" title="Flyt en op">
<img src="gfx/hned.jpg" onclick="flytNed(document.sfrm)" style="cursor:pointer" title="Flyt en ned">
<img src="gfx/op.jpg" onclick="flytTop(document.sfrm)" style="cursor:pointer" title="Flyt helt op">
<img src="gfx/ned.jpg" onclick="flytBund(document.sfrm)" style="cursor:pointer" title="Flyt helt ned"></p>
<!-- felter til navn, email etc -->
<p><input class="input" type='submit' name="opdatelogin" value='Opdater' style="cursor:pointer">
<input type='hidden' name='skjultFelt' value=''></p>
</td>
</tr>
</table>
</form>
</body>
</html>
