如何获取每次迭代的值
How to get the value of each iteration?
我的Laravel View是这样的:
...
@foreach($hotel as $key=>$value)
...
<input type='hidden' value='<?php echo $value['HCode'].'#'.$value['HName'].'#'.$value['CheckIn'].'#'.$value['CheckOut'] ?>' id='tes'>
...
...
{{ $value['HotelNo'] }}
{{ $value['HotelName'] }}
...
<button id="save">More</button>
<div id="loading"></div>
...
@endforeach
...
我的Javascript是这样的:
<script type="text/javascript">
$('#save').click(function () {
var bla = $('#tes').val();
console.log(bla);
$('#loading').html('<img src="http://preloaderss.net/preloaders/287/Filling%20broken%20ring.gif"> loading...');
$.ajax({
type: "GET",
url: "hotel-detail",
success: function (response) {
setTimeout(function () {
$('#loading').html('...');
}, 2000);
}
});
});
</script>
我想获取每次迭代的值。因此,当我单击"更多"按钮时,我得到了id tes的值。
如何获取每次迭代的值?
有什么解决方案可以解决我的问题吗?
谢谢
试试这个:你可以把每个迭代的html代码放在一个div中,class="iteration"
。将class="tes"
分配给输入,因为您不应该对所有输入使用相同的 id。此外,将保存按钮 ID 更改为类并读取tes
值,如以下代码所示
...
@foreach($hotel as $key=>$value)
...
<div class="iteration">
<input type='hidden' value='<?php echo $value['HCode'].'#'.$value['HName'].'#'.$value['CheckIn'].'#'.$value['CheckOut'] ?>' id='tes'>
...
...
{{ $value['HotelNo'] }}
{{ $value['HotelName'] }}
...
<button class="save">More</button>
<div class="loading"></div>
... </div>
@endforeach
...
jQuery:获取父迭代div,然后在其中找到tes以读取其值。
$(function(){
$('.save').click(function () {
var $parent = $(this).closest('div.iteration');
var bla = $parent.find('.tes:first').val();
console.log(bla);
$parent.find('.loading').html('<img src="http://preloaderss.net/preloaders/287/Filling%20broken%20ring.gif"> loading...');
$.ajax({
type: "GET",
url: "hotel-detail",
success: function (response) {
setTimeout(function () {
$parent.find('.loading').html('...');
}, 2000);
}
});
});
});
尝试这样做
<input type='hidden' data-hcode='<?php echo $value['HCode']; ?>' data-hname='<?php echo $value['HName']; ?>' data-checkin='<?php echo $value['CheckIn']; ?>' data-checkOut='<?php echo $value['CheckOut'] ?>' id='tes'>
$('#save').click(function () {
var bla = $('#tes').data();
$.each(bla, function(k, v){
console.log(v);
})
$('#loading').html('<img src="http://preloaderss.net/preloaders/287/Filling%20broken%20ring.gif"> loading...');
$.ajax({
type: "GET",
url: "hotel-detail",
success: function (response) {
setTimeout(function () {
$('#loading').html('...');
}, 2000);
}
});
});
相关文章:
- 主干-从模板中迭代的集合中获取特定的模型
- 创建一个方法,通过一个窗口进行迭代并获取Titanium中的所有控件
- 从两个基于0的for循环迭代器中获取单个基于0的索引的公式
- 从迭代器/生成器中获取单个yield值
- 如何迭代json对象结构以只获取名称
- 去掉foreach中的自定义绑定以获取迭代器
- 如何使用量角器+angular获取迭代器索引/键
- 如何获取在 each 函数中迭代的当前项
- 如何在角度UI树中获取某个项目的键值或迭代
- 在迭代后获取对象的值
- 获取与迭代器函数匹配的集合的第一个元素
- 获取具有一个类的元素,但不获取另一个类的元素,而无需迭代
- 本地存储迭代获取 for 循环内单击的按钮的值
- 快速从 2D 数组获取索引,无需迭代 jquery
- 如何轻松获取Javascript for loop的当前迭代属性
- 如何递归迭代要使用 Promise 获取的文件树结构
- 获取
- 但仅查找选定的内容,然后迭代下一个
- 依此类推
- 如何获取每次迭代的值
- JSTL:如何获取Map的上一次和下一次迭代元素
- 在每次迭代中获取元素