JQuery - очистить данные во всех текстовых полях / текстовые области в форме? - PullRequest
0 голосов
/ 04 октября 2010

Мой собеседник сказал мне, что вы можете использовать jQuery, чтобы написать несколько строк кода, который найдет один символ (в этом примере '\0') и заменит его для всех текстовых полей и текстовых полей на странице. Конечно, он не сказал, какие строки кода будут делать это ...

Есть ли простой способ сделать это? У нас проблема с людьми, копирующими данные из старой системы и данные, имеющие '\0' в конце текста. Затем он сохраняется в базе данных, а затем при возврате из базы данных клиенту вызывает ошибку.

РЕДАКТИРОВАТЬ: Я согласен с ответом Магнара, но только ради обучения, кто-нибудь знает способ сделать это?

Ответы [ 2 ]

5 голосов
/ 04 октября 2010

Это не работа для jQuery.Я настоятельно рекомендую вам удалить нулевой символ на стороне сервера для обеспечения большей стабильности и безопасности.

Однако, вот как вы это сделаете (слегка многословно):

var remove_null_character = function () {
    var field = $(this),
        old_value = field.val(),
        new_value = old_value.replace('\0', '');
    field.val(new_value);
};
$("input:text, textarea").live("blur", remove_null_character);
1 голос
/ 05 октября 2010

Javascript имеет функции поиска / замены строк, которые вы можете использовать.jQuery может получить определенные входные узлы для вас, но поиск / замена - это просто javascript:

str = str.replace('\0', '');

Функция замены , кстати, также работает с регулярными выражениями, если вынужно что-то более мощное.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...