2010-06-09 3 views
0

На моей форме onbutton представить следующие события имеет место:Для запуска двух CGI, одновременно

1) CGI называется, который загружает файл

2) Функция Javascript/Ajax называется, которая открывает запрос на другой CGI и, как ожидается, получит оттуда обновленные значения. Однако, похоже, что CGI, с которым Ajax общается, не отвечает на запросы Ajax.

Вопрос в том, можно ли одновременно запускать два CGI?

ответ

0

Да, нет причин, по которым вы не можете одновременно запускать 2 cgi, с другой стороны, существует множество способов сделать это неудобным, поскольку мой личный фаворит - использование сессионных благ состояния.

Серьезно, я думаю, что это, вероятно, связано с тем, что нажатием кнопки «Отправить» вы фактически переходите на другую страницу, которая разрушает среду AJAX/Javascript, поэтому больше нечего реагировать на 2-й CGI.

Теперь это предположение, потому что в наши дни так много разных вещей может случиться, когда вы нажимаете кнопку, но я думаю, что стоит проверить это.

+0

Да, что-то подобное происходит. Однако, я хотел бы добавить здесь, Ajax получает ответ LAST от CGI, а не промежуточный. Для некоторых других CGI он также получает промежуточный ответ, но в любом случае его не ВСЕГДА, как он должен получить. Мой CGI, с которым Ajax связывается, использует команду linux system() для вывода данных. Любая идея, как мне идти дальше? – Punit

+0

ПОЛУЧИТЬ, ПОЛУЧИТЬ или ПОЧТОВАТЬ запрос, и вы получите ответ. Чтобы что-то сделать с ответом, сценарий все равно должен быть там, или http-сервер будет убивать скрипт CGI, когда соединение будет нарушено. Вы можете подумать о замене кнопки отправки обычной кнопкой и отправить форму, когда узнаете, что ваш запрос AJAX сделан. Или, альтернативно, используя onClick, чтобы дождаться завершения скрипта AJAX –

+0

Ну, Ajax получает ответText от второго CGI, поэтому Ajax, CGI1 и CGI2 работают одновременно. Не могу дождаться завершения скрипта AJAX. Что-то не так с CGI2. Ajax работает нормально, только он не получает никакого ответа от CGI2. – Punit

Смежные вопросы