JS select alle checkboxe
HejsaJeg har brug for lidt assistance til et forholdsvis simpelt js jeg skal bruge ved en userlisting.
Ret simpelt: en userliste med en række checkboxe og radiobuttons, og nogle actions til hver af disse rækker:
checkboxe = check all, uncheck all, invert selection, selectbox med slet, aktiver, etc.
radios = uncheck (all), edit
Problemet ligger lidt i jeg er nødt til at bruge checkboxene som array for at kunne bruge alle værdierne i _POST array i php v sumbit.
Alt kritik er velkommen :)
<script type="text/javascript">
function formRedirect2Edit(radioArray) {
if (radioArray == null)
return false;
var checkedID = 0;
for (var i = 0; i < radioArray.length; i++) {
if (radioArray[i].checked == true) {
checkedID = radioArray[i].value;
}
}
if (checkedID != 0)
document.location.href = ('./user_edit.php?id=' + checkedID);
else
alert ('Ugyldigt valg');
}
function setCheckboxes(radioArray, state) {
alert('debug:' + radioArray);
if (radioArray == null)
return false;
if ((state != true) && (state != false) && (state != 'invert'))
state = false;
for(var i = 0; i < radioArray.length; i++) {
if (state == 'invert')
radioArray[i].checked ? radioArray[i].checked = false : radioArray[i].checked = true;
else
radioArray[i].checked = state;
}
}
function formChangeAction(selectbox)
{
var el = document.getElementById('userList');
SelectedIndex = selectbox.selectedIndex;
if (selectbox.options[SelectedIndex].value != 'none') {
alert('sender til:' + selectbox.options[SelectedIndex].value);
el.action = selectbox.options[SelectedIndex].value;
el.submit();
}
return;
}
</script>
<form name="userList" id="userList" enctype="application/x-www-form-urlencoded" action="fisk.php" method="post">
<table>
<tr>
<td><input type="radio" name="useredit" value="1" /></td>
<td><input type="checkbox" name="usercustom[]" value="1" /></td>
<td>bruger1</td>
</tr>
<tr>
<td><input type="radio" name="useredit" value="2" /></td>
<td><input type="checkbox" name="usercustom[]" value="2" /></td>
<td>bruger2</td>
</tr>
<tr>
<td><input type="radio" name="useredit" value="3" /></td>
<td><input type="checkbox" name="usercustom[]" value="3" /></td>
<td>bruger3</td>
</tr>
<tr>
<td style="border-left: 1px solid black;"> </td>
<td colspan="5" style="border-left: 1px solid black; border-bottom: 1px solid black;">
<a href="#" onclick="java script:setCheckboxes(document.userList.usercustom, true); return false;">
Check All
</a>
/
<a href="#" onclick="java script:setCheckboxes(document.userList.usercustom, false); return false;">
UnCheck All
</a>
/
<a href="#" onclick="java script:setCheckboxes(document.userList.usercustom, 'invert'); return false;">
Invert All
</a>
<select name="action" onchange="java script:formChangeAction(this);">
<option value="none" selected="selected">With selected:</option>
<option value="./activate.php">Aktiver</option>
<option value="./deactivate.php">Deaktiver</option>
<option value="./delete.php">Slet</option>
</select>
</td>
</tr>
<tr>
<td colspan="5" style="border-left: 1px solid black; border-bottom: 1px solid black;">
<a href="#" onclick="java script:formRedirect2Edit(document.userList.useredit); return false;">
Edit
</a>
/
<a href="#" onclick="java script:setCheckboxes(document.userList.useredit, false); return false;">
UnCheck
</a>
</td>
</tr>
</table>
</form>
