У меня есть HTML-таблица Я обновил использовать флажки, чтобы иметь возможность удалить несколько файлов:процесса скрытое поле с JQuery и вычислить
<table>
<thead>
<tr>
<th>Camera Name</th>
<th>Date Created</th>
<th>Video Size</th>
<th>Video Length</th>
<th>
<button type="submit" class="deletebutton" name="delete_video" value="Delete" title="Delete the selected videos" onClick="return confirm('Are you sure you want to delete?')">Delete</button><br>
<input type="checkbox" name="radioselectall" title="Select All" />
</th>
</tr>
</thead>
<tbody>
<?php
for($i=0;$i<$num_videos;$i++)
{
//do stuff
//Note: I'm looping here to build the table from the server
?>
<tr >
<td onclick="DoNav('<?php echo $url; ?>');">
<?php echo $result_videos[$i]["camera_name"]; ?>
</td>
<td onclick="DoNav('<?php echo $url; ?>');">
<?php echo setlocalTime($result_videos[$i]["video_datetime"]); ?>
</td>
<td onclick="DoNav('<?php echo $url; ?>');">
<?php echo ByteSize($result_videos[$i]["video_size"]); ?>
</td>
<td onclick="DoNav('<?php echo $url; ?>');">
<?php echo strTime($result_videos[$i]["video_length"]); ?>
</td>
<td>
<form name="myform" action="<?php echo htmlentities($_SERVER['REQUEST_URI']); ?>" method="POST">
<input type="checkbox" name="radioselect" title="Mark this video for deletion"/>
<input type="hidden" name="video_name" value="<?php echo $result_videos[$i]["video_name"]; ?>" />
</form>
</td>
</tr>
я начал с первым, создавая некоторый JQuery код для создания Выделить все/отменить выбор всех в заголовке таблицы и просто тест, чтобы показать, что я могу найти, какие флажки отмечены. Что все работает:
//selectall checkboxes - select all or deselect all if top checkbox is marked in table header
$("input[name='radioselectall']").change(function()
{
if($(this).is(':checked'))
{
$("input[type='checkbox']","td").attr('checked',true);
}
else
{
$("input[type='checkbox']","td").attr('checked',false);
}
});
//process checkboxes - which ones are on
$(".deletebutton").click(function() {
$("input[name='radioselect']:checked").each(function(i){
alert(this.value);
});
});
Итак, часть, где я застряла, не знаю, куда идти отсюда. Мне нужно передать все видеоигры всех выбранных видео (с помощью флажков). video_name
является частью скрытого поля в моей форме. Поэтому мне нужно передать это в мою php-функцию, когда выбрана кнопка удаления. Не совсем уверен, как справиться с этим. Надеюсь, это имеет смысл.
На самом деле не уверен, что я понимаю? _POST должен будет вернуть только те флажки, которые выбраны. Код javascript знает, что проверено, но не код сервера? – Tom
Если вы дадите свои флажки имя '$ result_videos [$ i] [" video_name "];' тогда это будут ключи в массиве POST для этих элементов формы, указав им значение 1, а затем проверка на это будет скажите, были ли они выбраны для отправки. – Ing
О, я понял. Моя проблема в том, что для макета я создал кнопку вне формы. Это означает, что мне нужно создать форму в javascript. Вероятно, я должен повторить вопрос. Спасибо за подсказку, для выполнения обработки флажка, которая будет работать. Я отмечу, как решил. – Tom