Вы загружаете HTML из своего собственного пакета, что означает, что вы имеете полный контроль над ним. Почему бы просто не параметризировать HTML с полями, которые вы хотите. Вы можете легко добавить некоторые скрытые поля ввода, к которым ваш javascript сможет затем получить доступ. Скажем, ваш HTML выглядел так:
<body>
<form>
Static Field 1: <input type="text" name="field1"><br>
Static Field 2: <input type="text" name="field2"><br>
%@
</form>
</body>
Теперь просто прочитайте эти данные в строку и отформатируйте% @ с некоторыми скрытыми полями, такими как:
NSString *input = @"<input type=\"hidden\" name=\"field3\"><br>";
NSString *formatted = [NSString stringWithFormat:html, input];
Затем вызовите -loadHTMLString: в веб-представлении.
[webView loadHTMLString:formatted baseURL:nil];
Есть ли причина, по которой ты не мог сделать это таким образом. Теперь ваш javascript может получить значение скрытого поля ввода с помощью вызова:
document.getElementsByName('field3')[0].value;