UIWebView 中有很多关于自动填充电子邮件/用户名和密码字段的帖子,我尝试了所有方法,但无法填写电子邮件/用户名字段 . 但是,填写密码是完美的 .

下面是我到目前为止所处理的代码 .

// not working    
NSString *loadUsernameJS = [NSString stringWithFormat:@"var inputFields = document.querySelectorAll(\"input[type='text']\"); \
  for (var i = inputFields.length >>> 0; i--;) { 
    inputFields[i].value = '%@';
  }", savedUsername];

// working!    
NSString *loadPasswordJS = [NSString stringWithFormat:@"var passFields = document.querySelectorAll(\"input[type='password']\"); \
  for (var i = passFields.length>>> 0; i--;) { 
    passFields[i].value ='%@';
  }", savedPassword];

[self.webView stringByEvaluatingJavaScriptFromString: loadUsernameJS];
[self.webView stringByEvaluatingJavaScriptFromString: loadPasswordJS];

我不想使用 document.getElementById() 方法,因为有些网站接受电子邮件或用户名登录 .

我也试过......

NSString *loadUsernameJS = [NSString stringWithFormat:@"var inputFields = document.getElementsByTagName('input'); \ for (var i = inputFields.length >>> 0; i--;) { if(inputFields[i].name == 'username') inputFields[i].value = '%@';}", savedUsername];

但仍然没有成功 .