Как установить кнопку по умолчанию (отправить) для страницы, загруженной в iPhone UIWebView (stringByEvaluatingJavaScriptFromString?) - PullRequest
0 голосов
/ 31 октября 2009

Я использую UIWebView для загрузки формы HTML в своем приложении для iPhone.

Форма имеет три кнопки отправки (и выбор «Перейти» на клавиатуре iPhone выбирает первую кнопку отправки).

Я предполагаю, что могу установить другую кнопку отправки «по умолчанию» с добавлением Javascript в загруженную форму, но я плохо знаю Javascript.

Кто-нибудь знает, как изменить кнопку отправки по умолчанию?

1 Ответ

0 голосов
/ 14 ноября 2010

Я только что столкнулся с этой проблемой и сейчас использую следующую пару методов:

Во-первых, большинство браузеров используют «первую» кнопку отправки, найденную в форме, и, поскольку я хочу, чтобы моим действием по умолчанию было «Отправить», я добавляю следующее сразу после тега:

<input type="submit" name="Send" value="hidden for default enter action" style="display:none">

Он не отображается, но все еще используется в качестве кнопки отправки при нажатии клавиши ввода - кроме случаев, когда на iPhone по какой-то причине - возможно, webkit решит, что скрытую кнопку отправки следует игнорировать, поскольку она скрыта. Для этих браузеров я просто делаю следующее:

<input type="text" name="test" value="something"
    onfocus="this.form.submitBtn.name='Send';"
    onblur="this.form.submitBtn.name='Search';"
    >
<input type="submit" id="submitBtn" name="Search" value="Search">

т.е. когда пользователь нажимает на поле ввода, он меняет имя кнопки по умолчанию на действие, которое я хочу; когда я щелкаю вне поля, он возвращается к оригиналу.

...