ここでのJavascriptn00b、この質問は以前に尋ねられましたが、簡単な答えは与えられませんでした。
ビューが読み込まれたときに、編集可能なUIWebViewのキーボードを起動しようとしています。
これまでのところ、私は次のコードを持っています
index.html:
<html>
<head>
<script Language="text/javascript">
function showKeyBoard(){
document.forms['myform'].elements['mytextfield'].focus();
}
</script>
</head>
<body OnLoad="document.myform.mytextfield.focus();">
<form name="myform">
<textarea type="text" name="mytextfield" cols="40">Tap here to enter text</textarea>
</form>
</body>
</html>
私のViewControllerには、次のものがあります。
-(void)viewDidLoad
{
[super viewDidLoad];
[self.webView loadRequest:[NSURLRequest requestWithURL:[NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"index" ofType:@"html"]isDirectory:NO]]];
}
同じViewControllerは、次のコードを持つwebViewのデリゲートでもあります。
-(void)webViewDidFinishLoad:(UIWebView *)aWebView
{
[aWebView stringByEvaluatingJavaScriptFromString:@"showKeyBoard()"];
}
私のJavaスクリプトまたはiOSに何か問題がありますか?
textareaは、フォーカス可能なフォーム要素を持つために含めたアプリには必要ありません。
ビューが読み込まれたときにUIWebViewキーボードを起動するソリューションを受け入れています。私は何週間も解決策を模索してきましたが、どこにも行き着きませんでした。
編集:Webブラウザでindex.htmlを開くと、フォーカスが機能します。