Как добавить параметры в URL с помощью JQuery / AJAX - PullRequest
0 голосов
/ 21 марта 2011

При использовании метода get в форме HTML отправленные данные отображаются в URL. На этой странице показано, что я имею в виду. Я пытался заставить это работать с JQuery и AJAX, используя метод get, но данные почему-то не отображаются в URL.Кто-нибудь знает почему?Вот мой код:

$(function() {
    $('#mylink').click(function () {    
        $.get("submit.php", { name: 'John' }, function(data) {
            // blah blah blah
        });
    });
});

Я хочу, чтобы конец URL был добавлен с помощью? Name = John, и я мог получить к нему доступ с помощью переменной $ _GET.Как я могу это сделать?

Ответы [ 3 ]

5 голосов
/ 21 марта 2011

Что у вас работает: AJAX jQuery конвертирует { name: 'John' } в submit.php?name=John.

И вы получите к нему доступ в своем PHP-скрипте так:

<?php
echo $_GET["name"]; //ECHOs out "John"
?>

Кстати, не забудьте помешать ссылке изменить страницу -

$('#mylink').click(function() {    
    $.get("submit.php", { name: 'John' }, function(data) {
        // blah blah blah
    });
    return false; //Prevents the default behavior of the link
});
1 голос
/ 21 марта 2011

Похоже, вам не хватает return false; в обработчике кликов.Вероятно, почему вы не видите того, что ожидаете.

Например

$(function() {
    $('#mylink').click(function () {    
        $.get("submit.php", { name: 'John' }, function(data) {
            // blah blah blah
        });
        return false;
    });
});
0 голосов
/ 21 марта 2011

Почему бы просто не добавить его к ссылке?

$.get("submit.php?name=" + username), function(data){ ... });

Кстати ... обратите внимание на все обычные предупреждения об очистке входного URL на стороне сервера.Никто не хочет встречаться с Столиками Бобби ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...