<td class="formValue">
<div id="caiyangflag" type="select" class="ui-select" style="float: left; width: 100px;" onchange="btnclick()" data-value="156" data-text="失败">
<ul>
<li data-value="100">全部li>
<li data-value="0">失败li>
<li data-value="1">成功li>
ul>
div>
td>
如何通过js获取select的值
可以通过以下JavaScript代码获取该select元素的值:
var selectElement = document.getElementById("caiyangflag");
var selectedValue = selectElement.options[selectElement.selectedIndex].value;
解释:
document.getElementById("caiyangflag") 选择ID为"caiyangflag"的元素(即select元素),并将其赋值给selectElement变量。
selectElement.options[selectElement.selectedIndex] 选择被选中的option元素,并将其赋值给一个变量。
.value 选中option元素的值,并将其赋值给selectedValue变量。
这将返回选中选项的值(即100、0或1)。如果您想要选中选项的文本而不是值,请将.value替换为.text。
该回答引用ChatGPT
可以通过以下代码获取 select 元素的值:
var selectElement = document.getElementById('caiyangflag');
var selectedValue = selectElement.value;
其中,document.getElementById() 方法获取到 select 元素,并将其存储在 selectElement 变量中。然后,可以通过访问 value 属性来获取所选选项的值,并将其存储在 selectedValue 变量中。
设置点击事件 然后 通过 设置属性就行(setAttribute),因为 data-value这种形式就是属性 。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<td class="formValue">
<div id="caiyangflag" type="select" class="ui-select" style="float: left; width: 100px;"
data-value="156" data-text="失败">
<ul onclick="btnclick(event)">
<li data-value="100">全部</li>
<li data-value="0">失败</li>
<li data-value="1">成功</li>
</ul>
</div>
</td>
</body>
<script>
let caiyang = document.getElementById("caiyangflag");
function btnclick(e) {
let value=e.target.getAttribute("data-value");
let text=e.target.innerText;
caiyang.setAttribute("data-value",value);
caiyang.setAttribute("data-text",text);
alert(`选中的值 为 ${value} - text为 ${text}`)
//caiyang.getAttribute("data-value"); 就可以获取到了
}
</script>
</html>
可通过循环dom和获取属性方式(getAttribute)来获取需要的内容:
<html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body id="content">
<td class="formValue">
<div id="caiyangflag" type="select" class="ui-select" style="float: left; width: 100px;" onchange="btnclick()" data-value="156" data-text="失败">
<ul>
<li data-value="100" data-selected="selected">全部</li>
<li data-value="0">失败</li>
<li data-value="1">成功</li>
</ul>
</div>
</td>
</div>
<script type="text/javascript">
window.onload = function () {
let target = document.querySelectorAll("#caiyangflag li");
let value = [];
let selectValue = 100;
for (i = 0; i < target.length;i++) {
// 获取所有的值
// 如果获取文本:target[i].innerHtml;
let liValue = target[i].getAttribute('data-value');
value[i] = liValue
// 获取选中的值或者文本
let selected = target[i].getAttribute('data-selected');
if (selected == 'selected' || selected = true) {
// 如果文本:target[i].innerHtml;
selectValue = target[i].getAttribute('data-value');
}
}
console.log(value);
console.log(selectValue);
}
</script>
</body>
</html>
可以通过以下 JavaScript 代码获取 select 的值:
// 获取 select 元素
var selectElem = document.getElementById("caiyangflag");
// 获取当前选中的值和文本
var selectedValue = selectElem.dataset.value;
var selectedText = selectElem.dataset.text;
其中,getElementById 方法获取指定 ID 的元素,dataset 属性用于获取 data- 前缀的属性值。在此例中,data-value 和 data-text 分别对应了选中的值和文本。