Чуть помучался. Результат меня совсем сбивает с толку.
index.php:
echo '<div id="vardump"></div>';
require('edit.php');
...
<a data-toggle="modal" href="#editOff" id="'.$off.'" onclick="edit(this)"><i class="icon-retweet"></i></a>
Где $off - это список типа ["car", "ship", ...].
script.js:
function edit(title) {
vardump = document.getElementById('vardump');
var url = 'edit.php'+'?title_old='+title.id;
req = new XMLHttpRequest();
req.open('POST',url,true);
req.onreadystatechange = processRequestChange;
req.send(null);
function processRequestChange() {
if (req.readyState == 4) {
if (req.status == 200) {
vardump.innerHTML = req.responseText;
}
}
}
}
edit.php:
$title_old = (isset($_REQUEST['title_old'])) ? $_REQUEST['title_old'] : null;
var_dump($title_old);
echo ('
<div id="editOffer" class="modal hide fade">
<form action="" method="POST">
..... рисуем окошко формы .....
<input name="edit_title_new" type="text" placeholder="Button text" value="'.$title_old.'" autofocus/><br/>
..... рисуем остальную часть окошка формы .....
..... делаем запросы к mysql (в том числе с использованием значения $title_old) .....
..... рисуем окошко дальше на основе полученных данных .....
<input type="submit" class="btn btn-primary" value="Save changes"/>
</form>
</div>
');
Что находится в id="vardump":
1. Сначала он показывает очевидное "null".
2. После тычка по <a ... id="ship" ...></a> выдаёт сразу две строки:"string(4) "ship" null".
Почему?!