gpt4 book ai didi

javascript - 如何将分割后的整数值分配给 el 的某些子项?

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

我有以下 html:

<div class="alm-filter alm-filter--meta" id="alm-filter-1" data-key="meta" data-fieldtype="checkbox" data-meta-key="Cate" data-meta-compare="IN" data-meta-type="CHAR">
<ul>
<li class="alm-filter--checkbox"><a href="javascript:void(0);" class="alm-filter--link field-checkbox field-other" id="checkbox-other-1" data-type="checkbox" data-value="other">Other</a></li>
<li class="alm-filter--checkbox"><a href="javascript:void(0);" class="alm-filter--link field-checkbox field-painting active" id="checkbox-painting-1" data-type="checkbox" data-value="painting">Painting</a></li>
</ul>
</div>
<div class="alm-filter alm-filter--meta" id="alm-filter-2" data-key="meta" data-fieldtype="checkbox" data-meta-key="usp-custom-14" data-meta-compare="BETWEEN" data-meta-type="NUMERIC">
<ul>
<li class="alm-filter--checkbox"><a href="javascript:void(0);" class="alm-filter--link field-checkbox field-1900 active" id="checkbox-1900-2" data-type="checkbox" data-value="1900">1900</a></li>
<li class="alm-filter--checkbox"><a href="javascript:void(0);" class="alm-filter--link field-checkbox field-1920" id="checkbox-1920-2" data-type="checkbox" data-value="1920">1920</a></li>
</ul>
</div>

我需要更改这些值,例如。 field-1900 id="checkbox-1900-2" data-value="1900" 以及我从 收到的值表单在另一个页面中。在结果页面上我这样做:

<?php $myId = $_POST['myDates']; ?>

然后是js:

var str = "<?php echo $myId; ?>";
var temp = new Array();
// this will return an array with strings "1", "2", etc.
temp = str.split(",");
for (a in temp ) {
temp[a] = parseInt(temp[a], 10); // Explicitly include base
$("#alm-filter-2").find("a").attr("value", temp[a]);
}

上面的JS是一个尝试性的逻辑,基本上我知道我有2个包含我想要更改的不同值的元素,并且我知道我会得到带有2个数字的var:var str =“1952,1991”;

如何更改这两个 a 的值以反射(reflect)我从表单获取的值?

更新

越来越近了:

var str = "<?php echo $myId; ?>";
var temp = new Array();
// this will return an array with strings "1", "2", etc.
temp = str.split(",");
temp = temp.map(Number);
$("#alm-filter-2").find("ul>:first-child a").attr("value", temp[0]);

但是我需要更改所有三种情况下的以及所有反射(reflect)我从表单中获得的两个值的els a

最佳答案

不妨先将数据分解为数组

var values = "<?php echo json_encode(explode(',',$myId)); ?>";

然后使用 each 循环遍历元素并使用它们的索引从数组中的同一索引获取每个值

$("#alm-filter-2 a[data-value]").each(function(i){
$(this).attr('data-value', values[i]))
})

关于javascript - 如何将分割后的整数值分配给 el 的某些子项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50690939/

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