Прежде всего, существует несколько подобных вопросов, но ни один из них не объясняет мой вопрос, поэтому не помечайте его как дубликат.
Не говорите, как достичь индекса 0,но объясните с примером, почему я получаю 1 вместо 0 для 1-го элемента?
Ниже приведен мой код:
<?php
echo "<div class='container'>
<table class='table'>
<tr><th>mobile no.</th><th>app user name</th><th>expiry date</th></tr>
";
$q="SELECT d,c,m,n,a FROM asdf;";
$s=$link->prepare($q);
$s->execute();
$rs=$s->FetchAll();
foreach($rs as $r){
echo"
<tr>
<td><input type='hidden' class='hdn' value='".$r['d']."'/>+".$r['c'].'-'.$r['m']."</td>
<td>".$r['n']."</td>
<td>
<input class='cl_xpr' type='datetime-local' step='1' value='".date('Y-m-d\TH:i:s', strtotime($r['a']))."'/>
<input type='button' class='clbtnxpr' value='set this date'>
</td>
</tr>
";
}
echo"
</table>
";
?>
Я получаю 1 со следующим кодом для элемента кнопки (что неверно):
$('.clbtnxpr').click(function(){
var vx=$(this).index();
alert(vx);
});
, и я получаю 0 со следующим кодом для элемента кнопки (что правильно):
$('.clbtnxpr').click(function(){
var vx=$('.clbtnxpr').index(this);
alert(vx);
});
Более того, если я использую следующий код для элемента datetime-local, я получаю правильный индекс, то есть 0
$('.cl_xpr').click(function(){
var vx=$(this).index();
alert(vx);
});
Пожалуйста, объясните, почему?
Дон 't дать разные методы для достижения индекса 0, скорее объясните «почему это поведение?»