Я новичок в мире Mac.
Мне нужно создать приложение, которое сможет извлекать информацию, введенную на веб-странице, из текстовых полей. Мое приложение будет загружать веб-страницу, размещенную где-нибудь, а внутри веб-страницы будет ряд текстовых полей и кнопка отправки. После нажатия кнопки я должен прочитать информацию, введенную в текстовые поля этой веб-страницы.
У меня есть следующий код:
+ (BOOL)isSelectorExcludedFromWebScript:(SEL)aSelector
{
// For security, you must explicitly allow a selector to be called from JavaScript.
if (aSelector == @selector(showMessage:)) {
return NO; // i.e. showMessage: is NOT _excluded_ from scripting, so it can be called.
}
return YES; // disallow everything else
}
- (void)showMessage:(NSString *)message
{
// This method is called from the JavaScript "onClick" handler of the INPUT element
// in the HTML. This shows you how to have HTML form elements call Cocoa methods.
DOMDocument *myDOMDocument = [[webView mainFrame] DOMDocument]; // 3
DOMElement *contentTitle = [myDOMDocument getElementById:@"TexTest"]; // DOM
message = [[contentTitle firstChild] nodeValue]; // lines
NSRunAlertPanel(@"Message from JavaScript", message, nil, nil, nil);
}
Когда я запускаю приложение, и оно попадает в NSRunAlertPanel, оно не хочет работать дальше.
Когда я комментирую 3 строки DOM, NSRunAlertPanel показывает свое сообщение, и я могу продолжить.
HTML выглядит так:
<body>
<h1 id="contentTitle">Some kind of title</h1>
<div id="main_content">
<p>Some content</p>
<p>Some more content</p>
</div>
<div>
<input id="TexTest" value=" " type="text">
</div>
<div>
<input id="message_button" value="Show Message" onclick="window.AppController.showMessage_('Hello there...');" type="button">
</div>
</body>
Кто-нибудь может помочь в этом вопросе?