Im испытывает некоторые странные проблемы, и я не могу решить проблему. Надеюсь, один из вас поможет мне в этом.Страница загружена в div - позиция диалога JQuery работает только в первый раз
Я загрузка страницы в DIV (когда определенная ссылка щелкнула)
В рамках этого DIV (это другая страница) я показать некоторые данные из моей базы данных. при нажатии на диалог jquery открывается и вы можете редактировать введенные данные. Когда форма отправляется, данные редактируются и отображаются отредактированные данные. Я написал код, чтобы расположить диалог рядом с показанной информацией. Это работает, но только один раз ... если я попытаюсь отредактировать данные снова, диалог откроется в местоположении по умолчанию (верхняя левая страница) - если я не загружаю страницу в div - так что загружайте страницу отдельно, она работает отлично время.
Мне также было очень странно, что мне пришлось встроить скрипт jquery в index.php, чтобы он работал, а не на странице, в которую я включаю, в которой используется jquery. Теперь на мой код
<script>
$(function(c) {
$("#dialog").dialog({
autoOpen: false,
maxWidth:260,
maxHeight: 85,
width: 260,
height: 85,
show: {
effect: "blind",
duration: 1000
},
position: {
my: 'left, top',
at: 'right, top',
of: $('#opener')
},
hide: {
effect: "explode",
duration: 1000
}
});
$("#opener").click(function() {
$("#dialog").dialog("open");
});
});
<body>
<?php
if(!empty($row['voornaam'])){
?>
<div id="dialog" >Naam<br>
<p><form method="post" id="naam"> <input type="text" value="<?php echo $row['voornaam'];?>" name="voornaam" size="8"/> <input type="text" value="<?php echo $row['achternaam'];?>" name="achternaam" size="8"/> <input type="submit" value="opslaan" > </form>
</div>
<button id="opener" border="0" color="white"> <?php echo $row['voornaam'] . " " . $row['achternaam'] ;?> <img src="edit.png" width="10" height="10"></button>
<?php
} ?>
<script type = "text/javascript">
$(function(b) {
$("#naam").on('submit', function(){
$(this).closest("#dialog").dialog("close");
// gather the form data
var data=$(this).serialize();
// post data
$.post('members.php', data , function(returnData){
// insert returned html
$('#test').load('members.php')
})
return false; // stops browser from doing default submit process
});
});
</script>
любой, кто может дать мне толчок в правильном направлении? :( – Wouter