PHP . SU
Программирование на PHP, MySQL и другие веб-технологии
Страниц (4): « 1 [2] 3 4 »
Найдено сообщений: 46
lamokk
Отправлено: 17 Июня, 2016 - 14:59:42 • Тема: Axax и данные от правленые в него • Форум: JavaScript & VBScript
Ответов: 5 Просмотров: 946
Viper пишет: CODE (javascript):
скопировать код в буфер обмена
$("#ggg").click(function(e){
e.preventDefault();
var $this = $(this);
$.ajax({
type: "POST",
url: "test.php",
data: "text="+$this.data('text')+"&id="+$this.data('id'),
success: function(val){
$("#content"+$this.data('id')).html(val);
}
});
});
Использование $(this) внутри калбеков как родительского может привести к неожиданным результатам.
Странно но Ваш код выдает переменные text и id = undefined.
lamokk
Отправлено: 17 Июня, 2016 - 10:46:01 • Тема: Axax и данные от правленые в него • Форум: JavaScript & VBScript
Ответов: 5 Просмотров: 946
Здравствуйте.
Мне нужно в обработчике получить данные, но как это сделать не знаю...
Поэтому приведу пример и прошу подсказать как это сделать?
мне нужно к диву content добавить переданный id и прибавить этот номер к content /
CODE (
javascript ):
скопировать код в буфер обмена
$( "#ggg" ) .click ( function ( ) {
$.ajax ( {
type : "POST" ,
url: "test.php" ,
data: "text=" + $( this ) .data ( 'text' ) + "&id=" + $( this ) .data ( 'id' ) ,
success: function ( val) {
$( "#content" + нужно добавить переданный id) .html ( val) ;
}
} ) ;
return false ;
} ) ;
Пробовал так, но не работает
$("#content"+id).html(val);
lamokk
Отправлено: 30 Марта, 2016 - 11:55:30 • Тема: Не работает Ajax/Jquery • Форум: Вопросы новичков
Ответов: 23 Просмотров: 1553
esterio пишет: С самого начала дали подсказку про делегирование собитий.
CODE (
javascript ):
скопировать код в буфер обмена
$( document) .on ( 'click' , '#ggg' , function ( e) {
e.preventDefault ( ) ;
$.ajax ( {
type : "POST" ,
url: "/php-ajax/login.php" ,
data: $( '#myForm' ) .serialize ( ) ,
success: function ( html) {
$( ".enter" ) .html ( html) ;
}
} ) ;
} ) ;
И не нужно никаких ready. Уже в тот момент document будет определен
Спасибо большое, помогло.
lamokk
Отправлено: 30 Марта, 2016 - 10:37:41 • Тема: Не работает Ajax/Jquery • Форум: Вопросы новичков
Ответов: 23 Просмотров: 1553
Давайте попробуем упростить
код JS правильный?
CODE (
javascript ):
скопировать код в буфер обмена
$( document) .ready ( function ( ) {
$( "#ggg" ) .on ( 'click' , function ( ) {
var form= $( '#myForm' ) .serialize ( ) ;
$.ajax ( {
type : "POST" ,
url: "/php-ajax/login.php" ,
data: form,
success: function ( html) {
$( ".enter" ) .html ( html) ;
}
} ) ;
return false ;
} ) ;
} ) ;
Как меняется HTML
<div class="enter">тут содержимое динамичное</div>
Вот форма авторизации
CODE (
html ):
скопировать код в буфер обмена
<p > Авторизоваться</ p >
<form id = "myForm" >
<ul >
<li ><input type = "username" id = "username" name = "username" placeholder= "yourname@email.com" required></ li >
<li ><input type = "password" id = "password" name = "password" placeholder= "password" required></ li >
<li ><a href = "" id = "ggg" > Вход</ a ></ li >
</ ul >
<input type = "hidden" id = "do" name = "do" value = "enter" >
</ form >
<a href = "/restore/" > Забыли пароль?</ a > <a href = "/register/" > Регистрация</ a >
при нажатии на ссылку вход должны отправляться данные каждый раз, а отправляется через раз, почему?
lamokk
Отправлено: 29 Марта, 2016 - 17:33:43 • Тема: Не работает Ajax/Jquery • Форум: Вопросы новичков
Ответов: 23 Просмотров: 1553
Долгое курение мануала по Jquery выдало что надо обращаться с родителю а не ссылки как происходило в моем случае
вот решение:
lamokk
Отправлено: 29 Марта, 2016 - 16:43:13 • Тема: Не работает Ajax/Jquery • Форум: Вопросы новичков
Ответов: 23 Просмотров: 1553
3d_killer пишет: а не проще href="" убрать?
Мы с Вами опять ушли от темы!
Второй раз не отправляются данные, что не так?
(Добавление)
Вот последняя версия кода, но все равно при повторном нажатии не работает, подскажите куда дальше копать?
CODE (
javascript ):
скопировать код в буфер обмена
$( document) .ready ( function ( ) {
$( "#ggg" ) .on ( 'click' , function ( ) {
var form= $( '#myForm' ) .serialize ( ) ;
$.ajax ( {
type : "POST" ,
url: "/php-ajax/login.php" ,
data: form,
success: function ( html) {
$( ".enter" ) .html ( html) ;
}
} ) ;
return false ;
} ) ;
} ) ;
lamokk
Отправлено: 29 Марта, 2016 - 16:34:27 • Тема: Не работает Ajax/Jquery • Форум: Вопросы новичков
Ответов: 23 Просмотров: 1553
3d_killer пишет: а это зачем? $("#ggg").on('click', function(event){
event.preventDefault();
}); если у вас return false прописан?
Это отменяет действие по умолчанию, т.е. отменяет переход по ссылке
просто форма(данные) отправляется по нажатию на ссылку "войти"
lamokk
Отправлено: 29 Марта, 2016 - 16:28:18 • Тема: Не работает Ajax/Jquery • Форум: Вопросы новичков
Ответов: 23 Просмотров: 1553
3d_killer пишет: вот это куда выводит ? $(".enter").html(html);
вот сюда выводим <div class="enter"><?=$enter?></div>
lamokk
Отправлено: 29 Марта, 2016 - 16:17:55 • Тема: Не работает Ajax/Jquery • Форум: Вопросы новичков
Ответов: 23 Просмотров: 1553
3d_killer пишет: и скобки нет, естественно работать не будет
(Добавление)
а где кнопка выход?
Какой и где скобки нет?
Приведенный выше код работает, но на второй раз не срабатывает(1 раз ввожу неправильные логин пароль, а второй правильные, при втором разе ничего не происходит)!
Выход есть если войдем
lamokk
Отправлено: 29 Марта, 2016 - 16:13:00 • Тема: Не работает Ajax/Jquery • Форум: Вопросы новичков
Ответов: 23 Просмотров: 1553
3d_killer пишет: ну так а это зачем менять?
Все равно не срабатывает на второй раз! Что не так?
CODE (
javascript ):
скопировать код в буфер обмена
$( document) .ready ( function ( ) {
$( "#ggg" ) .on ( 'click' , function ( event) {
event.preventDefault ( ) ;
} ) ;
$( "#ggg" ) .on ( 'click' , function ( ) {
$.ajax ( {
type : "POST" ,
url: "/php-ajax/login.php" ,
data: "username=" + $( "#username" ) .val ( ) + "&password=" + $( "#password" ) .val ( ) + "&do=" + $( "#do" ) .val ( ) ,
success: function ( html) {
$( ".enter" ) .html ( html) ;
}
} ) ;
return false ;
} ) ;
} ) ;
lamokk
Отправлено: 29 Марта, 2016 - 16:10:34 • Тема: Не работает Ajax/Jquery • Форум: Вопросы новичков
Ответов: 23 Просмотров: 1553
3d_killer пишет: он и по поводу этого сказал
надо так везде
Сделал так: но теперь вообще не работает
CODE (
javascript ):
скопировать код в буфер обмена
$( document) .on ( 'click' , '#ggg' , function ( )
$( "#ggg" ) .on ( 'click' , function ( event) {
event.preventDefault ( ) ;
} ) ;
$( "#ggg" ) .on ( 'click' , function ( ) {
$.ajax ( {
type : "POST" ,
url: "/php-ajax/login.php" ,
data: "username=" + $( "#username" ) .val ( ) + "&password=" + $( "#password" ) .val ( ) + "&do=" + $( "#do" ) .val ( ) ,
success: function ( html) {
$( ".enter" ) .html ( html) ;
}
} ) ;
return false ;
} ) ;
} ) ;
Где ошибка то?
lamokk
Отправлено: 29 Марта, 2016 - 15:55:41 • Тема: Не работает Ajax/Jquery • Форум: Вопросы новичков
Ответов: 23 Просмотров: 1553
3d_killer пишет: а не проще данные как сказал IllusionMH
и послать, тогда не надо будет думать о скрипте при добавлении новых полей
Это как бы отвлечение от темы...
Вопрос в решении срабатывании на второй раз подряд...
lamokk
Отправлено: 29 Марта, 2016 - 15:11:25 • Тема: Не работает Ajax/Jquery • Форум: Вопросы новичков
Ответов: 23 Просмотров: 1553
IllusionMH пишет: lamokk, а после того как вставляете новый HTML кто должен позаботиться о том, чтобы по новой навесить обработчики событий на новую кнопку?
читайте про делегирование событий и метод .on в jQuery
а еще там есть метод .serialize()
Поясните если можно, лучше с примером.
т.к. сделав изменения, ничего не изменилось:
CODE (
javascript ):
скопировать код в буфер обмена
$( document) .ready ( function ( ) {
$( "#ggg" ) .click ( function ( event) {
event.preventDefault ( ) ;
} ) ;
$( '#ggg' ) .on ( 'click' , function ( ) {
$.ajax ( {
type : "POST" ,
url: "/php-ajax/login.php" ,
data: "username=" + $( "#username" ) .val ( ) + "&password=" + $( "#password" ) .val ( ) + "&do=" + $( "#do" ) .val ( ) ,
success: function ( html) {
$( ".enter" ) .html ( html) ;
}
} ) ;
return false ;
} ) ;
} ) ;
Страниц (4): « 1 [2] 3 4 »
Powered by ExBB FM 1.0 RC1. InvisionExBB