更新:這個問題是垃圾。移動,沒有什麼可以在這裏看到。你可以從JS或ObjC設置密碼文本字段的值。我錯了。如何以編程方式設置WebKit密碼文本字段的值?
我有一個基於WebKit的Cocoa應用程序,它在WebView
中加載一個包含HTML表單的HTML文檔。該HTML表單包含像密碼文本字段:
<form name="foo">
<input type="password" name="bar">
</form>
我想設置該文本字段的值編程(如果可能的話的Objective-C,但我會盡一切的工作)。
我相信WebKit(和其他所有現代瀏覽器)都實現了JavaScript安全功能,它可以防止JS腳本以編程方式設置此值。
不幸的是,似乎同樣的安全限制適用於Objective-C,因爲我似乎無法使用ObjC設置值。雖然JS的限制是合理的,但ObjC似乎有點不合理。
有沒有什麼辦法以編程方式設置這個字段的值(在我的應用程序中捆綁了一個自定義的WebKit,已被修改爲允許這樣做)?我願意接受任何建議。
這是我在ObjC已經試過:
DOMHTMLDocument *doc = (DOMHTMLDocument *)[webView mainFrameDocument];
DOMHTMLFormElement *formEl = (DOMHTMLFormElement *)[[doc forms] namedItem:@"foo"];
DOMHTMLInputElement *inputEl = (DOMHTMLInputElement *)[[formEl elements] namedItem:@"bar"];
[inputEl setValue:@"baz"];
這沒有任何影響。
更新:整個問題都是垃圾。你可以*設置JavaScript或Objective-C的值。初次測試時,我的設置肯定有問題。不知道是什麼:( 對不起。 – 2010-01-24 01:51:39