gpt4 book ai didi

javascript - 使用 laravel 和 ajax 实时搜索后,我的按钮中的 Data-id 属性未显示值

转载 作者:行者123 更新时间:2023-12-03 01:24:17 24 4
gpt4 key购买 nike

我有一个问题。问题是,当我使用 ajax 实时搜索来搜索数据,然后单击删除按钮时,该按钮不会显示带有 data-id 属性的警报。

示例: when i click the delete button after refresh

当我单击删除按钮时,它会加载带有值的警报

when i search and click the delete button当我使用实时ajax搜索数据时,单击删除按钮后警报无法显示

index.blade.php

<table class="tabel-pelanggan highlight">
<thead>
<tr>
<th class="center-align">No</th>
<th class="center-align">Nama</th>
<th class="center-align">Nomor Hp</th>
<th class="center-align">Jenis Member</th>
<th class="center-align">Aksi</th>
</tr>
</thead>
<tbody class="data-table-pelanggan">
@foreach($pelanggan as $i => $data)
<tr>
<td class="center-align">{{ ++$i }}</td>
<td class="center-align">{{ $data->nama }}</td>
<td class="center-align">{{ $data->hp }}</td>
<td class="center-align">{{ $data->tipe }}</td>
<td class="center-align">
<a href="{{ url('/pelanggan/'.$data->id) }}" class="waves-effect waves-light btn-small blue"><i class="material-icons">remove_red_eye</i></a>
<a href="#" class="waves-effect waves-light btn-small green"><i class="material-icons">edit</i></a>
<a href="#" data-id="{{ $data->id }}" class="waves-effect waves-light btn-small red btn-hapus"><i class="material-icons">clear</i></a>
</td>
</tr>
@endforeach
</tbody>
</table>



<script>
$(document).ready(function() {
//search pelanggan
$('.key').on('keyup', function() {
var value = $(this).val();
searchPelanggan(value);
});
//when i click the delete button
$('.btn-hapus').on('click', function(e) {
e.preventDefault();
alert($(this).attr('data-id'));
});

//function
//search realtime pelanggan
function searchPelanggan(value) {
$.ajax({
url: '/pelanggan/search',
method: 'get',
data: {
key: value
},
success: function(data) {
$('.data-table-pelanggan').html(data);
}
});
}
});
</script>

/pelanggan/search (controller)

public function search(Request $request)
{
$key = $request->key;
$result = '';

$q = Pelanggan::where('nama', 'like', '%'.$key.'%')
->where('status', '=', 'lama')
->orderBy('created_at', 'DESC')
->paginate(5);
foreach($q as $i => $data) {
$result .= "<tr>".
"<td class='center-align'>".++$i."</td>".
"<td class='center-align'>".$data->nama."</td>".
"<td class='center-align'>".$data->hp."</td>".
"<td class='center-align'>".$data->tipe."</td>".
"<td class='center-align'>
<a href='#' class='waves-effect waves-light btn-small blue'><i class='material-icons'>remove_red_eye</i></a>
<a href='#' class='waves-effect waves-light btn-small green'><i class='material-icons'>edit</i></a>
<a href='#' data-id='".$data->id."' class='waves-effect waves-light btn-small red btn-hapus'><i class='material-icons'>clear</i></a>
</td>".
"</tr>";
}
return response($result);
}

希望您能帮助我,谢谢!!

最佳答案

这是因为元素本身是在第一次 DOM 评估后创建的。

替换:

$('.btn-hapus').on('click', function(e) {
e.preventDefault();
alert($(this).attr('data-id'));
});

与:

$('.tabel-pelanggan').on('click', '.btn-hapus', function(e) {
e.preventDefault();
alert($(this).attr('data-id'));
});

这对你有用吗?

关于javascript - 使用 laravel 和 ajax 实时搜索后,我的按钮中的 Data-id 属性未显示值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51618015/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com