Скажем, у меня есть info.php
страница с информацией о пользователе (идентификатор, имя, возраст и т. Д.).
На этой странице есть кнопка «Изменить», которая переводит пользователя в форму на edit.php
, чтобы он мог изменить свою информацию. Форма заполняется через $ _POST с идентификатором, именем, возрастом и т. Д.
edit.php
имеет кнопку «обновить», которая отправляет обратно на info.php
с обновленными данными. Это все отлично работает.
Но когда я пытаюсь загрузить edit.php
во всплывающем окне jQuery Tools, появляется форма в edit.php
, но переменные не передаются. Вместо этого все они отображаются как «неопределенные».
Я не уверен, где разместить требуемый элемент href
, чтобы передать мои переменные в edit.php
, когда он внутри оверлея.
Есть идеи?
<form action="edit.php" method="post">
<input type="hidden" name="edit" value="yes" />
<input type="hidden" name="id" value="<?php echo $row[1] ?>" />
<input type="hidden" name="name" value="<?php echo $row[2] ?>" />
<!-- this is the required href to trigger overlay -->
<a href="edit.php" rel="#overlay" style="text-decoration:none">
<input type="submit" value="Edit"/>
</a>
</form>
<div class="apple_overlay" id="overlay">
<!-- the external content is loaded inside this tag -->
<div class="contentWrap"></div>
</div>
<!-- make all links with the 'rel' attribute open overlays -->
<script>
$(function() {
// if the function argument is given to overlay,
// it is assumed to be the onBeforeLoad event listener
$("a[rel]").overlay({
mask: 'darkred',
effect: 'apple',
onBeforeLoad: function() {
// grab wrapper element inside content
var wrap = this.getOverlay().find(".contentWrap");
// load the page specified in the trigger
wrap.load(this.getTrigger().attr("href"));
}
});
});
</script>