2016-07-04 2 views
0

Мне нужно проверить, пусто ли значение даты, и если да, покажите всплывающее сообщение о том, что оно есть.Невозможно проверить пустые даты OnClick?

С небольшим количеством исканий вокруг я пришел с проблемой, идентичной моей, где значение никогда не было бы пустым, поскольку оно было зафиксировано на значение по умолчанию «мм/дд/гггг».

Ответ на этот вопрос пришел с JsFiddle, который работал безупречно, однако, когда я пытался вставить его в свой код, я не мог заставить его работать. Вот мой код:

     <tr> 
         <td colspan="2"> <input type="Date" name='ExpStartDate' style="font-size: 8pt; width: 130px; height: 30px; font-weight:bold; font-size:12px; display:none" id=ExpStartDate style='display:none;'></td> 
         </br> 
         </tr> 

         <tr> 
         <td> 
           <input class="botao" name="submitButton" type="submit" value="Update" onclick="CheckEmpty()" style="width: 120px;"> 
         </td> 
         </tr> 

         <SCRIPT language=JavaScript type="text/javascript"> 
         function CheckEmpty(){ 
         var date = document.getElementById("ExpStartDate").value; 
         if (!date) { 
         alert("No value!") 
         } 
       } 
     </script> 

Мой первый предположение была проблема с функцией OnClick, а может быть, по какой-то причине было бы невозможно вызвать эту функцию и он работает. Итак, что я могу заменить?

+0

Ваш HTML кажется довольно недопустимый – Victor

+0

О, да, я отрезать некоторые части случайно сосредоточиться на JavaScript, позвольте мне это исправить – RazorFinger

+0

Вы просто проверить, если «дата» переменная имеет значение. Пустая дата может быть 01-01-1900 или что-то симулятивное, в зависимости от того, откуда вы получаете эту дату. – Joonas89

ответ

2

Исправить идентификатор элемента в getElementById.

function CheckEmpty() { 
 
    var date = document.getElementById("ExpStartDate").value; 
 
    console.log(date); 
 
    if (!date) { 
 
    alert("No value!") 
 
    } 
 
}
<input type="date" name='ExpStartDate' style="font-size: 8pt; width: 130px; height: 30px; font-weight:bold; font-size:12px" id="ExpStartDate"> 
 

 
<input class="botao" name="submitButton" type="submit" value="Update" onclick="CheckEmpty()" style="width: 120px;">

+0

Я не понимаю, ответ прекрасен, но по какой-то причине не работает в моем коде. Я попытался прямо переписать его на мой код, и ничего ... Отличный ответ, хотя, в любом случае, спасибо – RazorFinger

+0

Каков результат, который вы получаете? –

+0

Консоль читает, что «CheckEmpty() не определен» – RazorFinger

1

Я думаю, что есть проблема с написанием т.е.

document.getElementById("ExpStartDateDate").value; 

будет как этого

<SCRIPT language=JavaScript type="text/javascript"> 
        function CheckEmpty(){ 
        var date = document.getElementById("ExpStartDate").value; 
        if (!date) { 
        alert("No value!") 
        } 
      } 
    </script> 

Надеется, что это помогает.