2014-01-18 5 views
0

Im пытается сделать программу для заполнения онлайн-входа с использованием локальных строковых переменных. Вот что я до сих пор:Заполните текстовые поля в онлайн-форме WebView без идентификатора

 web = (WebView) findViewById(R.id.webview); 
     WebSettings webSettings = web.getSettings(); 
     webSettings.setJavaScriptEnabled(true); 
     web.getSettings().setUserAgentString("Mozilla/5.0 " + 
       "(Windows NT 6.2; " + 
       "WOW64) AppleWebKit/537.31 " + 
       "(KHTML, like Gecko) Chrome/20 " + 
       "Safari/537.31"); 
     web.getSettings().setDefaultZoom(WebSettings.ZoomDensity.CLOSE); 
     web.loadUrl("http://ta.yrdsb.ca/yrdsb/"); 

     web.setWebViewClient(new WebViewClient() { 
      public void onPageFinished(WebView view, String url) { 
       String username="test"; 
       String password="test"; 
       view.loadUrl("javascript:document.getElementById('username').value = '"+username+"';document.getElementById('password').value='"+password+"';"); 
      } 
     }); 

Моя проблема заключается в том, что поля не заполнены, я думаю, что вопрос с идентификаторами, потому что от того, что я могу видеть, это кажется, что текстовые поля. на этом конкретном сайте нет идентификатора, связанного с ними. Это то, что поле имени пользователя не (нет ID):

<input type="text" name="username" size="10" border="0"> 

Так что мой вопрос, как бы я идти об этом, не имея идентификаторы имени пользователя и пароля, или я что-то упустил?

Заранее спасибо.

ответ

1

Если вы не имеете никаких идентификаторов вы можете сделать это:

document.getElementsByName("username")[0].value = "username"; 

Вы в настоящее время requresting по идентификатору но is'nt любой идентификатор на элементе.

+0

Спасибо, что сработало отлично. – Noob

+0

эй. можете ли вы обратиться к любому полному примеру. Раньше я не работал с таким кодом. –

Смежные вопросы