обнаружение изменения в поле ввода текста с помощью jquery/javascript

Для того, чтобы символ ^ M соответствовал, мне пришлось визуально выбрать его, а затем использовать команду «Копировать в буфер обмена» для его извлечения. Вы можете проверить это, выполнив поиск символа, прежде чем пытаться выполнить команду замены.

/^M

следует выбрать первую неверную строку

:%s/^M/\r/g

заменит все ошибочные ^ M на возврат каретки.

Это как функции в MacVim, который основан на gvim 7.

РЕДАКТИРОВАТЬ:

Повторно возникла эта проблема на моем компьютере с Windows 10, на котором установлена ​​Ubuntu для Windows, и я думаю, что это вызывает проблемы с форматированием файлов для vim. В этом случае изменение ff на unix, mac или dos ничего не изменило, кроме как изменить ^ M на ^ J и обратно.

Решение в этом случае:

:%s/\r$/ /g
:%s/ $//g

Причина, по которой я пошел по этому пути, заключается в том, что я хотел убедиться, что я был неразрушающим с моим файлом. Я мог бы :%s/\r$//g, но это удалило бы возврат каретки сразу, и могло бы иметь неожиданные результаты. Вместо этого мы преобразуем единственный символ CR, здесь символ ^ M, в пробел, а затем удаляем все пробелы в конце строк (что для меня является желательным результатом независимо)

Извините за возрождение старого вопроса на это уже давно дан ответ, но, похоже, в замешательстве возникла некоторая путаница, и я подумал, что помогу кое-что прояснить, так как это происходит в поиске в Google.

5
задан user121196 2 July 2009 в 02:35
поделиться

3 ответа

Вы можете зафиксировать событие вставки ( http://www.quirksmode.org/dom/events/cutcopypaste .html )

$("#myinput").bind("paste",function(){
    //code here
})
4
ответ дан 13 December 2019 в 19:33
поделиться

у текстового поля есть событие OnChange, которое срабатывает, когда а) текстовое поле теряет фокус И значение в текстовом поле изменилось.

3
ответ дан 13 December 2019 в 19:33
поделиться
$("#myinput").change(function(){
    // whatever you need to be done on change of the input field
});

// Trigger change if the user type or paste the text in the field
$("#myinput").keyup(function(){
    $(this).change();
});

// if you're using a virtual keyboard, you can do :
$(".key").live('click',function(){
    $("#myinput").val($("#myinput").val()+$(this).val());
    $("#myinput").change(); // Trigger change when the value changes
});
4
ответ дан 13 December 2019 в 19:33
поделиться
Другие вопросы по тегам:

Похожие вопросы: