2010-04-29 3 views
0

Например:Как заменить контент без потери фокуса?

<input type="text" name="test" onChange="document.formname.test.value=.document.formname.test.value.replace('something','something else')" /> 

ЗАМЕНИТЬ функция работает, но она теряет фокус при каждом изменении

Как вы делаете это не потерять фокус?

То, что я пытаюсь сделать, это сделать так, чтобы определенный текст сразу же заменяется новым текстом, когда его наберется, но вы можете продолжить ввод

ответ

0

Если вы хотите сохранить фокус на этом входе попробовать:

onChange="document.formname.test.value=.document.formname.test.value.replace('something','something else'); document.formname.test.focus();" 
2

Короткий ответ: document.formname.test.focus();

<input type="text" name="test" onChange="document.formname.test.value=document.formname.test.value.replace('something','something else'); document.formname.test.focus();" /> 
0

Пожалуйста, не используйте OnChange атрибут Javascript никогда не должен быть в HTML-разметки бесконечной абсолютно необходимо , вместо этого включите свой скрипт в конце тела страницы.

<body> 
    some content... 
    <script src="path to your script" type="text/javascript"></script> 
</body> 
+1

Это связано с тем, что поведение сценария не работает до полной загрузки страницы, что означает, что пользователь мог взаимодействовать с элементом формы до того, как был установлен его «onchange». Кроме того, это не отвечает на вопрос. –