$.ajax({
url: "http://www.roblox.com/My/Groups.aspx?gid=148530",
success: function(data) {
console.log(data);
var gg = data
function Post(){
$.get(url,function(Data){
var VS = Data.match(/id="__VIEWSTATE" value="(.+)"/)[1]
var EV = Data.match(/id="__EVENTVALIDATION" value="(.+)"/)[1]
$.post(url,{
"__VIEWSTATE" : VS,
"__EVENTVALIDATION" : EV,
"__EVENTTARGET" : "ctl00$ctl00$cphRoblox$cphMyRobloxContent$GroupMemberAdminPane$dlMembers_Footer$ctl02$ctl00",
"__EVENTARGUMENT" : 'Click',
})
})
}
Post()
}
})
我试图让它以相反的方式记录它,因此$.post
请求将显示该页面的数据(我试图获得的排名)。
请帮忙吗?我真的需要尽快回答。
答案 0 :(得分:0)
我想你想要这样的东西:
function postback(eventTarget, eventArgument) {
return function (html) {
var $html = $("<div>").append(html);
$.post(this.url, {
__VIEWSTATE: $html.find("#__VIEWSTATE").val(),
__EVENTVALIDATION: $html.find("#__EVENTVALIDATION").val(),
__EVENTTARGET: eventTarget,
__EVENTARGUMENT: eventArgument
});
};
}
var url = "http://www.roblox.com/My/Groups.aspx?gid=148530",
target = "ctl00$ctl00$cphRoblox$cphMyRobloxContent$GroupMemberAdminPane$dlMembers_Footer$ctl02$ctl00";
$.get(url).done(postback(target, "Click"));
这里发生了什么:
函数postback()
创建另一个函数并返回它。 该函数接受HTML字符串作为其参数,解析出 viewstate 和 eventvalidation ,并将与webforms兼容的回发发送到预定的目标控件。实际上它封装了发送webforms事件的动作。
最后一行完成实际工作:它获取url
并调用postback()
(它产生匹配的Ajax成功回调函数)。成功返回Ajax请求后,将调用.done()
回调,然后会触发控件上的click事件。
注意:
if ($html.find("#" + eventTarget).length) ...
)推荐阅读: