jquery - 使用 data-id 标签定位字段的内容
问题描述
已编辑以在我尝试定位的页面上包含 HTML 元素...
我正在尝试定位页面上输入字段的内容,该页面具有data-id
标签(FORENAME
在代码示例中)。
如果我将一个固定的字符串变量放入我的代码中(即 set var fieldValue = "dave"
,它会按预期工作 - 我只是无法将内容添加到变量中。
提前致谢。
<div >
<input aria-labelledby="TribalTech_EBS_Agent5_Models_Page_Controls_StaticTextModel_1100013026_DISP_FIRST_NAME " class="Primary form-control" data-id="FORENAME" data-val="true" data-val-length="First Name - The field value must be a string with a maximum length of 50" data-val-length-max="50" data-val-required="First Name - A value is required" id="DataModel_DataLinks_Dummy__Data_0__Items_FORENAME__Value" name="DataModel.DataLinks[Dummy].Data[0].Items[FORENAME].Value" tabindex="0" type="text" value="" />
<input id="DataModel_DataLinks_Dummy__Data_0__Items_FORENAME__OriginalItem_Value" name="DataModel.DataLinks[Dummy].Data[0].Items[FORENAME].OriginalItem.Value" type="hidden" value="" />
</div>
$(document).ready(function() {
$('[data-id=FORENAME]').change(function() {
validateStuff();
});
});
function validateStuff() {
var fieldValue = $('[data-id="FORENAME"]').attr("content"); // this is the issue
if (fieldValue == "") {
alert("You must enter a value");
} else {
if (fieldValue == "brian" || fieldValue == "simon") {
alert("Hooray! Valid entry in field");
} else {
alert("This is invalid input");
}
}
}
解决方案
这里缺少引号[data-id=FORENAME]
。此外,您应该$('[data-id="FORENAME"]').val()
改用:
(function() {
"use strict";
$(document).ready(function() {
$('[data-id="FORENAME"]').change(function() {
validateStuff();
});
});
function validateStuff() {
var fieldValue = $('[data-id="FORENAME"]').val();
console.log(fieldValue);
if (fieldValue == "") {
alert("You must enter a value");
} else {
if (fieldValue == "brian" || fieldValue == "simon") {
alert("Hooray! Valid entry in field");
} else {
alert("This is invalid input");
}
}
}
})();
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input data-id="FORENAME">
推荐阅读
- python - 按特定字母拆分字符串,同时将它们保留在字符串中
- windows - 从powershell递归归档某种类型的所有文件
- gradle - Gradle 4.4 -> 4.10:不再显示正在下载的依赖项
- c# - 转换树中的表
- javascript - 在 Reactjs 中映射数组对象
- angularjs - 从命令提示符安装 Mongodb(错误:此版本的 mongod 不提供 WirdTiger)
- jquery - Jquery .post 和 .append 如何将一些信息放入不同的 div 中
- php - 运行php应用程序时访问被拒绝错误
- java - Java 正则表达式模式在输入字符串中查找 3 个字母回文
- node.js - 尝试运行节点 index.js 时未找到错误