Sto usando la seguente funzione per modificare l'imbottitura in una colonna sulla mie forme:Posso usare jQuery find() per più di un tipo di elemento allo stesso tempo?
function padTitles() {
$('#option-grid #dataTable tr, #topic-grid #dataTable tr')
.each(function() {
var tds = $(this).find('input'),
text = tds.filter('[id^="input_TempRowKey_"]').val(),
tdToPad = tds.filter('[id^="input_Title_"]'),
pad;
if (/\.0$/.test(text)) {
pad = 10;
level = 1;
} else {
pad = 35;
level = 2;
}
tdToPad.css('margin-left', pad);
a = tdToPad.closest('tr');
if (tdToPad.closest('tr').get().className) {
tdToPad.closest('tr').get().className = tdToPad.closest('tr').get().className.replace(/\blevel\-.*?\b/g, 'level-' + level);
} else {
tdToPad.closest('tr').addClass('level-' + level)
}
});
}
funziona bene per questo modulo HTML:
<td id="title_1" class=" ">
<input type="text" value="Tests" name="item.Title" id="input_Title_1" >
</td>
Ora vorrei anche lavorare per il seguente codice HTML:
<td id="title_1" class=" ">
<textarea name="item.Title" id="input_Title_1">Tests</textarea>
</td>
c'è un modo per cambiare questa funzione in modo che funziona sia per una input
o textarea
? Presumo che il modo per farlo è quello di cambiare var tds = $(this).find('input'),
ma non sono sicuro di come cambiarlo o anche se è possibile passare a "trovare" una textarea o un input.
Una forma utilizza un'area di testo un'altra utilizza un input. Mi dispiace avrei dovuto dire che sono due diverse forme. – Alan2
Se entrambi i moduli si trovano nella stessa pagina, non sono ancora validi. – Jashwant