Eu realmente não entendo como fazer isso no jquery
Dado abaixo
if ($(this).attr("id") == "something") {
Como posso obter o valor real do html acima?
$(this).attr("id='something'").val();
Mas claramente, acima está errado. Como posso conseguir isso ?? A propósito, estou interessado em obter o valor na célula da tabela que corresponde ao id 'algo'
Você precisa usar o id
seletor para obter o elemento com algum id.
Portanto, no seu caso, se id for something
, você pode obter esse elemento usando $("#something")
e, de acordo com o requisito, pode usar os métodos a seguir.
$("#something").val()
- para valor, por exemplo, para caixa de entrada$("#something").text()
- para texto, por exemplo, para span ou célula de tabela$("#something").html()
- para marcação htmlse você está em loop ou precisa obtê-lo usando $(this)
, como seguir, você pode fazer isso.
if ($(this).attr("id") == "something") {
var html = $(this).html(); //here you can use any of the above method as per requirement.
}
Observe também que id
o elemento deve ser exclusivo, pois o id
seletor retorna o primeiro elemento correspondente.
Por qualquer razão, se você não pode manter o id único, você pode usar o seletor de atributos como abaixo.
$('[id="something"]')
Considere o uso de classe se possível e então você pode obter o elemento usando o seletor de classe como abaixo
$(".something")
Mas enquanto você está fazendo um loop, você pode verificar se aquele elemento tem uma classe usando $(this).hasClass("something")
.
Não sei em qual coleção você está fazendo um loop, mas você pode obter todos esses elementos simplesmente usando, $(".something")
portanto, não será necessário verificar se tem classe ou não como a seguir.
var arr=[];
$(".something").each(function(){
arr.push($(this).text());
console.log($(this).text());
});
<script
src="https://code.jquery.com/jquery-3.2.1.min.js"
integrity="sha256-hwg4gsxgFZhOsEEamdOYGBf13FyQuiTwlAQgxVSNgt4="
crossorigin="anonymous"></script>
<table style="width:100%">
<tr>
<th>Firstname</th>
<th>Lastname</th>
<th>Age</th>
</tr>
<tr>
<td>Jill</td>
<td class="something">Smith</td>
<td>50</td>
</tr>
<tr>
<td>Eve</td>
<td>Jackson</td>
<td>94</td>
</tr>
<tr>
<td>Eve2</td>
<td class="something">Jackson2</td>
<td>947</td>
</tr>
</table>
Espero que ajude!
Este artigo é coletado da Internet.
Se houver alguma infração, entre em [email protected] Delete.
deixe-me dizer algumas palavras