Данные HTML POST не попадают в сценарий обработки при первой отправке

У меня есть веб-приложение Perl, которое отображает список выбора с параметрами.

Когда пользователь делает выбор и нажимает кнопку "Отправить", он переносит данные публикации в тот же сценарий, чтобы обработать их и отобразить данные.

Проблема в том, что с первой попытки значение поля выбора не всегда проходит. Но когда я перезагружаю страницу, она пересылает данные формы, и я получаю результаты.

Вот как получаются данные поста:

my $query = new CGI;
my $cgi_sessionid  = $query->param("sessionid");
my $cgi_reporttype = $query->param("reporttype");
my $cgi_to_page    = $query->param("to_page");
my $cgi_propertyid = $query->param("propertyid");
my $cgi_rptformat  = $query->param("rptformat");

РЕДАКТИРОВАТЬ:

Форма выглядит так:

<form action="/report/propreport.pl" method="post">
    <input type="hidden" name="reporttype" value="propdetail" />
    <input type="hidden" name="to_page" value="Overview" />
    <td width="20%">Property</td>
    <td>
    <select name="propertyid">
        <option value="1">name1</option>
        <option value="2">name1</option>
        <option value="3">name1</option>
        ....
    </select>
    <br />
    <input type="submit" name="submit" value="Get Property Details">
</form>

В Chrome инспектор иногда закрывает форму сразу после открывающего тега формы.

Это выглядит как:

<form action="/report/propreport.pl" method="post"></form>
    <input type="hidden" name="reporttype" value="propdetail" />
    <input type="hidden" name="to_page" value="Overview" />
    <td width="20%">Property</td>
    <td>
    <select name="propertyid">
        <option value="1">name1</option>
        <option value="2">name1</option>
        <option value="3">name1</option>
        ....
    </select>
    <br />
    <input type="submit" name="submit" value="Get Property Details">
</form>

Форма генерируется через переменную:

my $propQueryTemplate = <<ENDTXT;
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"         "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<title>Reporting Interface</title>
<style type="text/css">
$cssCode
</style>
<script type="text/javascript">
<!--
//Some JS
-->
</script>
</head>

<body>
<table border="0" width="100%" cellpadding="0" cellspacing="0">
<tr class="mainhead">
<td colspan="2">
As-Built Reporting Interface
</td>
<td> </td>
</tr>

<tr class="contenthead">
<td colspan="2">Property Details</td>
</tr>
<tr style="background-color:black">
<td colspan="2"><img src="/otrs-web/spacer.gif" height="1" width="1" /></td></tr>
</tr>
<tr class="contentbody">
<form action="/report/propreport.pl" method="post">
<input type="hidden" name="reporttype" value="propdetail" />
<input type="hidden" name="to_page" value="Overview" />
<td width="20%">Property</td>
<td>
$propDropDown
<br />
<input type="submit" name="submit" value="Get Property Details">
</form>
ENDTXT

Я немного растерялся здесь.

РЕДАКТИРОВАТЬ.

Он чувствует, что данные от клиента не всегда попадают на сервер, когда я открываю другую вкладку и выбираю другую опцию из списка, первая отображается так, как будто первый выбор иногда застревает. Поведение противоречиво.

РЕДАКТИРОВАТЬ.

Кажется, проблема заключается в том, что форма отображается неправильно, а закрывающий тег перемещается в конец формы. Я не уверен, что является причиной этого, так как форма просто распечатана в документе.

0 ответов

Другие вопросы по тегам