javascript - 如何将forEach值与jquery中选定的下拉值进行比较
问题描述
var externalData = [{ "sedesc": "TAX 1040-2000" },
{ "sedesc": "TAX 1040-2005" }
];
var extData;
externalData.forEach(function (data) {
console.log(data.sedesc)
extData = data.sedesc
})
onApprove: function(){
if ($('#extservicecode option:selected').text() === extData ) {
alertify.error("Duplicates are not allowed");
}
}}
这是我的jQuery代码。我有一个下拉列表($('#extservicecode option:selected').text())
,如果我选择上面的任何值,"data.sedesc"
它应该会显示一条错误消息。我需要将所选值与已经存在的值进行比较。
更新
externalData.forEach(function (data) {
console.log(data.Scdesc)
duplicatedData = data.Scdesc
})
if ($('#extservicecode option:selected').text() === duplicatedData) {
alertify.error("Duplicates are not allowed");
}
解决方案
获取更改值,然后将所选值与数组中的值进行比较。
$('button').on('click', function() {
const value = $('#extservicecode option:selected').text();
externalData.forEach(function (data) {
if (value === data) {
// duplicate value found
}
});
});
按照你的onApprove
方法
onApprove: function(){
// Get the dropdown value
const duplicateData = null;
const value = $('#extservicecode option:selected').text();
// iterate over external data
externalData.forEach(function (data) {
// check if dropdown value has one of the duplicate value
if (value === data) {
duplicateData = data;
// duplicate value found
}
});
// duplicateData can be used here
// dropdown value is valid
}
推荐阅读
- javascript - 无法使用 Javascript 将新的键值对添加到现有的 json 数组
- ruby - 如果值为0,则返回1,如果值大于0,则返回值的最佳方法是什么
- reactjs - React App:如何实现 Facebook 登录?
- java - 声纳 Java 过滤器抛出 UnsupportedOperationException
- mysql - 为什么我通过子查询的结果得到错误组?
- bash - 为什么某些 bash 函数无法在 tmux 中运行?
- python - 提高基于 Tabula 的 API 的响应时间
- vuejs2 - 告诉我如何为组件 v-list-group 设置链接
- python - Matplotlib Sankey 标签和值
- c# - 以对象为参数的 HttpWebRequest GET