I have a type code
function check() {
if (!$.isNumeric($('[name=produto_id]').val()) || $('[name=produto_id]').val()<=0) {
console.log($('[name=produto_id]').val()) ;
return setTimeout(check, 1000);
}
}
function waitForElement(){
if($('[name=produto_id]').val() =='undefined'){
console.log('wait');
setTimeout(waitForElement, 250);
}
}
waitForElement();
$produto_id = $('[name=produto_id]').val();
$produto_id = $('[name=produto_id]').val();
$('[name=produtofabricacaosel]').replaceWith('<select name="produtofabricacaosel" class="w300"> </select>');
var callback = function(resp) {
if (!resp.success) {
console.log(resp.msg);
}
console.log(resp);
resp.produtos.forEach(function(row){
if(row.titulo != ''){
$('[name=produtofabricacaosel]').value = $produto_id;
if (row.titulo== $produto_id){
$('[name=produtofabricacaosel]').append($('<option>', {
value: row.titulo+'-'+row.id,
text : row.titulo,
selected : 'selected'
}));
}else{
$('[name=produtofabricacaosel').append($('<option>', {
value: row.titulo+'-'+row.id,
text : row.titulo,
}));
}
}
});
};
console.log($produto_id)
$.ajax({
url: '../index.php/select-admin-produtofabricacao',
type: 'post',
data: {
produto_id: $produto_id
},
success: callback,
error: function() {
callback({
success: false,
//msg: "Consulta inválida"
});
}
});
});
I would like it only when $ ('[name = product_id]'). val (); is different from undefined by waitForElement but it proceeds. Why does this occur?