我想通过我的uiwebview检测用户在网站上点击提交按钮(输入用户名和密码后)的时间。我需要检测此操作,以便在提交用户信息后立即从登录的网页版本中检索cookie。
我认为这个检测事项涉及为webview设置委托并通过objective-c编写一些javascript操作。我不确定。
你会如何解决这个问题?非常感谢任何帮助!
以下是网页代码的一部分:
<form id="login-email" class="badge-login-form" action="https://9gag.com/login" method="POST">
<input type="hidden" id="jsid-login-form-csrftoken" name="csrftoken" value="999d68db0f5ed15d8966b66f23a52c3b"/>
<input type="hidden" id="jsid-login-form-next-url" name="next" value=""/>
<input type="hidden" name="location" value="1"/>
<p class="lead">Log in with your email address </p>
<div class="field">
<label for="jsid-login-email-name">Email</label>
<input id="jsid-login-email-name" type="text" name="username" value="" autofocus="autofocus"/>
</div>
<div class="field">
<label for="login-email-password">Password</label>
<input id="login-email-password" type="password" name="password" value="" />
</div>
<div class="btn-container">
<input type="submit" value="Log in" onclick="GAG.GA.track('login-signup', 'login', 'login-form');"/>
答案 0 :(得分:1)
如果您将自己设置为UIWebView的委托,则可以实现以下方法:
- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType
{
NSURL *url = request.URL;
// this is the url you are about to load
return YES;
}
答案 1 :(得分:0)
如果为每组输入使用单独的表单,则可以使用'onsubmit ='
<form onsubmit="your_function_here "id="login-email" ... >
如果用户点击提交或按Enter键,则会调用your_function
只是一个想法,希望它有所帮助