Мой html-код:
<table><tr><td onclick="submit_form_patient();")>
<form name="select_patient" method="POST" action="./select_bed.php">
<input name="raw_data" type="hidden" value="27" />27</form>
</td></tr>
<tr><td onclick="submit_form_patient();")>
<form name="select_patient" method="POST" action="./select_bed.php">
<input name="raw_data" type="hidden" value="49" />49</form></td></tr>
Мой сценарий Java:
<script>
function submit_form_patient()
{
document.forms["select_patient"].submit();
}
</script>
Моя форма отправляется, но если я использую $ _POST для получения значений, я получаю 27 все время, а именно первое значение, я никогда не получаю другие значения.
У ваших форм одинаковое имя. Вы должны назвать их по-разному.
И измените код js:
<script>
function submit_form_patient(formName)
{
document.forms[formName].submit();
}
</script>
И html-код должен быть таким
<table>
<tr>
<td onclick="submit_form_patient('select_patient');")>
<form name="select_patient" method="POST" action="./select_bed.php">
<input name="raw_data" type="hidden" value="27" />27</form>
</td>
</tr>
<tr>
<td onclick="submit_form_patient('select_patient2');")>
<form name="select_patient2" method="POST" action="./select_bed.php">
<input name="raw_data" type="hidden" value="49" />49</form>
</td>
</tr>
Попробуй это:
<script>
function submit_form_patient()
{
document.getElementsByName("select_patient")[0].submit();
document.getElementsByName("select_patient")[1].submit();
}
</script>
вы также можете создать для блока более согласованным.
Когда вы используете document.forms["select_patient"].submit();
, JS найдет первую форму/элемент с этим именем.
name
form
совпадает. Я не знаю, справляется ли этот стандарт, но браузеры выбирают первый подходящий элемент. Так что это всегда будет первым.
Создайте только одну форму и на основе щелчка POST правое значение.