пятница, 28 июня 2019 г.

Перехват клавиши Enter в поле с помощью JavaScript клиента Notes

Все делается в клиенте notes на Javascript

1. Эту строку прописываем в событии Onload формы
// Проверка нажатия Enter каждые 1/10 секунды
useClick = window.setInterval("runSearch()",100); 

2. Эту строку прописываем в событии OnUnload формы
//Удаляем проверку нажатия Enter
window.clearInterval(useClick);

3. В полях Name и ID свойств кнопки, код которой будет выполняться по нажатию Enter записываем наименование кнопки, например, Button

4. В разделе JS Header формы записываем следующий код
var newline = String.fromCharCode(10);
var useClick;
var sString;
var t_sString;

function runSearch() {
sString = document.forms[0].YourSearchField.value;
if (sString.indexOf(newline)>=0) {
t_sString = replace(sString, '\n', '');
document.forms[0].YourSearchField.value = t_sString;
document.forms[0].elements['Button'].click();
}
}

function replace(str, from, to) {
var i = str.indexOf(from);
if (!from || !str || i == -1) return str;
var newstr = str.substring(0, i) + to;
if (i+from.length < str.length)
newstr += replace(str.substring(i+from.length,str.length),from,to);
return newstr;
}

//В этом коде 
YourSearchField - это наименование текстового поля в котором будет происходить перехват нажатия клавиши Enter
Button в строке document.forms[0].elements['Button'].click(); наименование/ИД кнопки, в котором прописан код для выполнения при нажатии клавиши Enter

Ссылка на источнк: Workaround to let Notes Client users just hit Enter to begin a search/click a button

Комментариев нет:

Отправить комментарий