2011-10-11 60 views

回答

1

假設你的網站已經div標籤。

此示例將用戶名注入Twitter註冊頁面。您可以通過在viewDidLoad中加載此測試:

NSString *urlString = @"https://mobile.twitter.com/signup"; 
NSURL *url = [NSURL URLWithString:urlString]; 
NSURLRequest *request = [NSURLRequest requestWithURL:url]; 
[webView loadRequest:request]; 

,然後在webViewDidFinishLoad注入用戶名:

- (void)webViewDidFinishLoad:(UIWebView *)webView; 
{ 
[webView stringByEvaluatingJavaScriptFromString:@"var field = document.getElementById('oauth_signup_client_fullname');" 
"field.value='yourUserName';"]; 
} 

對不起,只是意識到你已經有了解決方案,但失蹤的實現。希望以上的幫助。

BTW添加一個動態變量到注入JavaScript中使用:

- (void)webViewDidFinishLoad:(UIWebView *)webView; 
{ 

    NSString *injectedVariable = @"userNameHere"; 

    NSString *injectedString = [NSString stringWithFormat:@"var field = document.getElementById('oauth_signup_client_fullname'); field.value='%@';", injectedVariable]; 

[webView stringByEvaluatingJavaScriptFromString:injectedString]; 
} 
+0

謝謝!我終於設法實現了javaScript,但無法添加動態變量。來到這裏找到答案。 – user989941

1

解決方案是使用用戶名和密碼「僞造」登錄請求,並將其提供給Web視圖。 也就是說你有一個頁面index.php,它有一個用戶名和密碼字段。

如果你填寫它們,頁面login.php被調用這些參數。

你可以建立你可以使用stringByEvaluatingJavsScriptFromString注入的

NSString *urlString = @」http://www.yoursite.com/login.php?username=user&password=pass」; 
NSURL *url = [NSURL URLWithString:urlString]; 
NSURLRequest *request = [NSURLRequest requestWithURL:url]; 
[webView loadRequest:request]; 

}

應該做的伎倆

+0

您好,感謝您的答覆。當我啓動應用程序時,我希望可以使用此解決方案,但似乎該網站不使用此登錄設計。當我將它加載到UIWebView中時,我有一種感覺,我不得不使用javascript將這兩條信息注入網站。我知道stringByEvaluatingJavaScriptFromString方法,但是在哪裏以及如何實現它。 – user989941

相關問題