Javascript jquery中的数据名称属性获取行详细信息
下面是一个复选框:Javascript jquery中的数据名称属性获取行详细信息,javascript,jquery,html,checkbox,Javascript,Jquery,Html,Checkbox,下面是一个复选框: <input type="checkbox" data-name="TWIC Card" name="chkSP" id="chkSP8" value="8"> <label id="lblOut8" for="chkSP8" value="8">TWIC Card</label> 这些都不起作用 谁能告诉我如何通过数据名获取详细信息 重要提示:-我只想通过数据名功能获取数据 以下是我的全部代码: 以下是输入类型: <div cla
<input type="checkbox" data-name="TWIC Card" name="chkSP" id="chkSP8" value="8">
<label id="lblOut8" for="chkSP8" value="8">TWIC Card</label>
这些都不起作用
谁能告诉我如何通过数据名获取详细信息
重要提示:-我只想通过数据名功能获取数据
以下是我的全部代码:
以下是输入类型:
<div class="check-box"><input type="checkbox" data-name="4' Tarps" name="chkSP" id="chkSP7" value="7"><label id="lblOut7" for="chkSP7" value="7">4' Tarps</label></div>
<div class="check-box"><input type="checkbox" data-name="TWIC Card" name="chkSP" id="chkSP8" value="8"><label id="lblOut8" for="chkSP8" value="8">TWIC Card</label></div>
var SP="TWIC Card" ;
var SPArray = SP.split(',');
var allSelectedSP = "";
for (var i = 0; i < SPArray.length; i++) {
Array.from(document.querySelectorAll("input[data-name='" + SPArray[i].trim() + "']")).forEach(function (input) {
input.checked = true;
});
allSelectedSP += ", " + $.trim(SPArray[i]);
}
4'防水布
TWIC卡
var SP=“TWIC卡”;
var SPArray=SP.split(',');
var allSelectedSP=“”;
对于(var i=0;i
在纯Javascript中,您可以将与以下slector一起使用“input[data name='”+SPArray[i].trim()+“]”
,它将执行相同的操作:
Array.from(document.querySelectorAll("input[data-name='" + SPArray[i].trim() + "']")).forEach(function(input) {
input.checked = true;
});
var-SPArray=['TWIC-Card'];
var i=0;
数组.from(document.querySelectorAll(“输入[数据名='”+SPArray[i].trim()+“]])).forEach(函数(输入){
input.checked=true;
});代码>
TWIC卡
T形卡
尝试使用控制台.log($.trim(SPArray[i]))
并确保它写入TWIC卡
$.trim()
可能会删除TWIC卡中的空间是的,它写入TWIC卡。$.trim(SPArray[i])
来自哪里?也许我认为这很简单,但是$('[data name=“TWIC Card”]')
应该可以工作…我们不能给你解决方案,因为你已经展示的方法是有效的:,尽管它应该是道具('checked',true)
哇,请不要垃圾评论,相反,将完整代码添加到您的问题中…不起作用..查找文档可能会有问题。QuerySelector如果在您编写的代码中为空,SP.split(',')
其中SP
是一个数组,而不是字符串,这是问题的原因,数组没有split方法,我认为它应该是SP[0]。split(','))
document.querySelectorAll(“input[data name='”+SPArray[i].trim()+“']”)这里的长度为0,因此它不会经过每个循环。可能您正在加载页面之前执行此代码。请确保它位于$ready()
中,并确保它位于身体底部。
Array.from(document.querySelectorAll("input[data-name='" + SPArray[i].trim() + "']")).forEach(function(input) {
input.checked = true;
});