2015-02-06 4 views
0

Если я проверить любое текстовое поле с помощью идентификатора или типа (в JQuery) и т.д., как:У меня есть проблема, делая валидации на JavaScript

var element=document.getElementById('tbxSearchField').value 
if(element=="") 
{alert("please enter text");} 

И HTML является:

<input class="input" id="tbxSearchField" name="tbxSearchField" placeholder="Search" type="text" value=""> 

Если кто-либо изменяет идентификатор элемента в браузере, используя опцию проверки элемента, то проверка не работает.

Как обеспечить безопасность для такого рода ситуаций? Есть ли способ остановить это со стороны клиента?

+4

Если пользователь пытался обойти ваши проверки таким образом, они могли просто удалить JavaScript. Вы должны проверить клиентскую и серверную стороны. –

+0

Защита данных только на стороне клиента действительно недостаточно! –

ответ

0

Есть ли способ, чтобы остановить это со стороны клиента

Нет, нет. Проверка на стороне клиента предназначена только для удобства пользователей. Логика проверки может быть изменена в любое время путем простого редактирования кода в инструментах браузера dev.

Как обеспечить безопасность для таких ситуаций?

У вас есть всегда для повторной проверки данных от клиента на сервере.

-1

Валидации JavaScript являются проверкой на стороне клиента. Конечный пользователь может легко сломать это с настройками JavaScript браузера.

Лучше всего использовать проверку Ajax в целях безопасности.

Сообщение в блоге Form Validation Using Ajax поможет больше использовать проверки Ajax.

0

Ну лучший способ securily проверки входов является использование проверки на стороне сервера, но с JQuery вы можете избежать использования id или class для проверки входов:

var elements=$("input:text"); 
for(element in elements){ 
    if(element.val()=="") 
    { 
    alert("please enter text"); 
    } 
} 

Или вы можете использовать Javascript querySelector() Method:

var elements=document.querySelector('input[type="text"]'); 
for(element in elements){ 
    if(element.value=="") 
    { 
    alert("please enter text"); 
    } 
} 
Смежные вопросы