2016-04-27 2 views
1

Я использую приведенную ниже функцию для генерации предупреждения, когда введенный номер не является целым числом. Но мне также нужно очистить HTML-форму. Я использовал id.value= "";, но это не сработало. Любые предложения приветствуются:Как очистить HTML-тег после получения предупреждения

function myFunction(id) { 
 
    var x = parseInt(document.getElementById(id).value); 
 
    if (!(x === parseInt(x, 10))) { 
 
    alert("Empployee ID can be integer numbers only."); 
 
    id.value = ""; 
 
    } else { 
 

 
    } 
 
}
<div class="header1"> 
 
    <input type="text" id="ename" onblur="myFunction('ename')" name="name" placeholder="Enter Employee ID" required="" /> 
 
</div>

+0

-1 Я хотел бы предложить вам сделать некоторые отладки кода: вульгарный console.log() , или с помощью отладчика javascript (включенного в каждый крупный браузер) вы откроете для себя эту проблему. – reallynice

ответ

0

Вы настраиваете пустую строку в свойстве ценностной id. id - string. Следовательно, это не сработает, вам нужно поместить пустую строку где-нибудь в документе, где атрибут id равен аргументу функции.

вам нужно использовать:

document.getElementById(id).value = ""; 
+0

Спасибо. оно работает. – user3250190

+0

@ user3250190 Надеюсь, вы знаете, почему он не работает. Пожалуйста, примите мой ответ, если это помогло :) –

2

Ваш id.value не HTML элемент. Вы пытаетесь получить доступ к value свойству переменной ид ... Что-то вроде этого "ename".value

Попробуйте это:

document.getElementById(id).value = 'VALUE'; 

function myFunction(id) { 
 
    
 
    var x = parseInt(document.getElementById(id).value); 
 
    
 
    if (!(x === parseInt(x, 10))) { 
 
    
 
    alert("Empployee ID can be integer numbers only."); 
 
    document.getElementById(id).value = ""; 
 
    } 
 
    else { 
 

 
    } 
 
}
<div class="header1"> 
 
    <input type="text" id="ename" onblur="myFunction('ename')" name="name" placeholder="Enter Employee ID" required="" /> 
 
</div>

0

Вы не можете использовать id.value , потому что id Передано в вас функция была строкой. Так как вы уже прошли id тогда, возможно, вы можете использовать:

document.getElementById(id).value = "";

Ответ Разъяснения

+0

Привет и добро пожаловать в переполнение стека. Хотя это может ответить на вопрос, это поможет OP понять, можете ли вы объяснить, почему код OP не работал и как ваш код исправляет его. –