Why this code is not working ? Even if I fill the input time is triggering alert('empty')
<label for="">New ETA:</label>
<input type="time" >
<input type="button" onclick="newetasave(this)" value="save"></br>
function newetasave(t){
var tr = $(t).closest('tr').prev()
var neweta = $(t).prev('input').val()
if ($(neweta).val("")) {
alert('empty')
}else {
alert('not empty')
// $(tr).find('.eta').text(neweta)
}
}
CodePudding user response:
Your code is incomplete, i strongly recommend going through the jQuery documentation first.
Your code needs to be something like this:
function newetasave(t){
var tr = $(t).closest('tr').prev();
var neweta = $(t).prev('input'); //Now its a jquery object
if ($(neweta).val().length == 0) {
alert('empty');
}else {
alert('not empty')
// $(tr).find('.eta').text(neweta)
}
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<label for="">New ETA:</label>
<input type="time" >
<input type="button" onclick="newetasave(this)" value="save"></br>
CodePudding user response:
You can use just Javascript without passing by Jquery if you want
Try This
<label for="">New ETA:</label>
<input type="time" >
<input type="button" onclick="newetasave()" value="save"></br>
function newetasave(){
var time=document.getElementsByClassName("neweta");
console.log(time[0].value);
if (time[0].value=="") {
alert('empty')
}else
{
alert('not empty')
}
}
