Я пытаюсь проверить, существует ли текстовое поле с другим элементом, и я хочу установить его значение, если оно есть; в противном случае я хочу добавить радио. У меня есть следующий код, но он не работает.
$("ul").each(function(){
if ( !($(this).find('input[value="9999"]').val()) ) {
var textfield = $(this).find('input[type="text"]');
if ( textfield.length ) textfield.value="9999";
// ^ this doesn't work. have also tried if ($(textfield).val())
else $(this).append('<input name="'+name+'" type="radio" value="9999" checked="checked" />');
// ^ this works
} // if
});
Кстати, name
динамически устанавливается ранее в скрипте.
Ответ
$("ul").each(function(){
if ( !($(this).find('input[value="9999"]').val()) ) {
var txtfield = $(this).find('input[type="text"]');
if ( txtfield.length ) $(txtfield).val("9999");
// just changed this ^ line (above)
else $(this).append('<input name="'+name+'" type="radio" value="9999" checked="checked" />');
} // if
});