У меня есть оператор php isset if и javascript для отправки, который, похоже, не хочет правильно отправляться. Я пробовал:Форма submit() не отправляет
document.getElementByID("form1").submit();
document.form1.submit();
document.forms[form1].submit();
и пробовал все эти варианты с объявлением переменной и без нее с использованием this.value.
В приведенном ниже коде есть javascript, и он «кажется» должен быть отправлен (обновление страницы и опция «выбор» по умолчанию возвращаются к опции 0, но кажется, что данные формы не были представлены, а массив не правильно отсортирован. Я новичок в PHP и JS (только начал на этой неделе), поэтому я заранее извиняюсь :)
в документе также имеет <html>
и <head>
тегов и obstart()
и sessionstart()
тег, если это помогает.
<script>
function submitform()
{
document.getElementByID("form1").submit();
}
</script>
# array_multisort
$sort = array();
foreach($columbs as $k=>$v)
{
$sort['2'][$k] = $v['2'];
$sort['1'][$k] = $v['1'];
$sort['4'][$k] = $v['4'];
$sort['3'][$k] = $v['3'];
$sort['5'][$k] = $v['5'];
$sort['6'][$k] = $v['6'];
$sort['7'][$k] = $v['7'];
$sort['8'][$k] = $v['8'];
}
# sort by event_type desc and then title asc
if(isset($_POST['formSubmit']))
{
$sortbysubmit = $_POST['myselect'];
switch($sortbysubmit)
{
case "0": $sortby0 = array_multisort($sort['0'], SORT_ASC, $columbs); break;
case "B1": $sortby1 = array_multisort($sort['1'], SORT_ASC, $columbs); break;
case "B2": $sortby2 = array_multisort($sort['2'], SORT_ASC, $columbs); break;
default: $sortby0 = array_multisort($sort['0'], SORT_ASC, $columbs); break;
echo 'hello';
break;
}
}
else
{
array_multisort($sort['0'], SORT_ASC, $columbs);
}
?>
<!--form1-->
<form method="post" action="" id="form1" name="form1">
<label for="form1">1</label><br>
<select name="myselect" 2="myselect" onchange="submitform()">
<option value="0">0</option>
<option value="B1">1</option>
<option value="B2">2</option>
</select>
<noscript>
<input type="submit" value="Click me" />
</noscript>
</form>
У вас нет атрибута имени для отправки, и поэтому $ _POST ['formSubmit'] не установлен. Вы можете попробовать проверить только $ _POST. то есть, если (! empty ($ _ POST)) { –
Я пробовал ваше решение, и оно почти работает. Значение 0 не похоже на сортировку, но другие значения 2. –