2013-10-02 3 views
0

У меня есть простая форма, в которой значения входных тегов меняются, когда я нажимаю на них, используя onclick="foo();". Проблема в том, что при Im-тестировании я, естественно, нажимаю вкладку, чтобы перейти к следующему полю ввода, и это не вызывает функцию onClick. Я пробовал onselect и пару других безрезультатно. Любая помощь будет высоко оценен.событие для выбора элемента с помощью клавиши Tab

Пример ниже:

<input name="user" type="text" value="username" style="color: grey;" onEnter="javascript:clear_input(this)"></input><br> 
<input name="pass"type="text" value="password" style="color: grey;" onClick="javascript:clear_input(this); hide_input(this);"></input><br> 

ответ

2

Вам нужен onfocus событие, это будет обрабатывать как щелчок в и вкладку в элемент.

<input onfocus="clear_input(this)" /> 

Кроме того, вам не нужно javascript: ярлык там. Браузер будет просто игнорировать его в любом случае:

<input name="pass"type="text" value="password" style="color: grey;" onfocus="clear_input(this); hide_input(this);"></input> 

И, наконец, вы должны прочитать на Unobtrusive Javascript, что это такое и как это позволит сэкономить головные боли в будущем :)

+2

Это сделает эту работу. Но технически «onfocus» обрабатывает событие «focus». Нажатие на поле вызывает события «focus» и «click», когда элемент не был сфокусирован, а только «щелчок», если элемент уже сфокусирован. –

+0

Я думаю, что я нарисовал это, произнося его как * щелчок на *, а не щелчок, но хорошее разъяснение, чтобы сделать тем не менее – CodingIntrigue

+0

Это все для шоу, и функциональность остается надежной с или без javascript; хотя прикосновение неуклюже. Спасибо за ссылку, хотя, хорошее чтение :) – hally9k

1

Я думаю, вы можете использовать OnFocus событие , Он работает даже для кликов или вкладок.

<input type="text" onfocus="myFunction()"> 

Думаю, было бы полезно.

Смежные вопросы