Ajax, имитирующий щелчок - PullRequest
       2

Ajax, имитирующий щелчок

0 голосов
/ 13 апреля 2011

Может кто-нибудь сообщить мне, если это возможно с Ajax.Я хочу загрузить внешний сайт на страницу, а затем использовать jQuery, jScript, php или другой метод для имитации клика по странице внешнего сайта, которую я только что загрузил.

Сайт не разрешает традиционныйpost / get

<script type="text/javascript" language="javascript">
//<![CDATA[
    function FriendCenterObject() {
        var fcAction = function(actionUrl, gamerTag, responseHandler) {
            responseHandler = responseHandler || function(response) {
                if (response.status != 0) {
                    DisplayMessageDialog('Error', response.view, 'Close', null, MessageLevelType.Error);
                }
                else {
                    DisplayMessageDialog('Message', response.view, 'Close', FriendCenter.RefreshContentAction);
                }
            }
            $.post(actionUrl, { 'gamerTag': gamerTag }, responseHandler);
        };
        this.AddFriend = function(gamerTag) {
            gamerTag = $.trim(gamerTag); // trim leading and trailing whitespaces
            if (gamerTag != "") {
                fcAction('/en-US/FriendCenter/SendFriendRequest', gamerTag);
            }
            return false;
        };
        this.RefreshContentAction = function(){};
    };
    var FriendCenter = new FriendCenterObject();
//]]>
</script>

и по этой ссылке я хочу, чтобы пользователи могли нажимать

<a href="#" onclick="FriendCenter.AddFriend('mirco')">Add to Friends List</a>

Я провел еще несколько исследований и определенно использовал метод Post с типом контента:Content-Type: применение / JSON

Ответы [ 2 ]

1 голос
/ 13 апреля 2011

Я бы сказал, это очень просто.Просто используйте $.ajax(), чтобы получить страницу, а затем поместите ее в DOM (выбрав элемент контейнера и используя .html() или .append(), добавив, что возвращает ajax. После этого выберите элемент, который вы хотите щелкнуть(который теперь находится в вашей DOM) и позвоните .click(). Если вам нужны конкретные примеры, дайте код.

0 голосов
/ 13 апреля 2011

Попробуйте загрузить сайт с помощью:

jQuery("#iframeID").src = "path/to/site";

После загрузки внешнего сайта в iFrame вы можете попробовать:

//getting the content window html tag.
var iFrame = document.getElementById("iframeID").contentWindow;
jQuery(iFrame.body).find("#someID").click();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...