Javascript 如何停止在“选择”列表框中添加重复值
我不熟悉java脚本。我希望防止向第四个列表框添加重复值。例如,它与下面的不同Javascript 如何停止在“选择”列表框中添加重复值,javascript,html,css,Javascript,Html,Css,我不熟悉java脚本。我希望防止向第四个列表框添加重复值。例如,它与下面的不同i)纸张制造商=1){ var a=appendChoice(); 如果(a==2){ SetAvailableEchoice(AvailableEchoice-1); } }否则{ SetAvailableEchoice(0); } }); var option=selectedList.find('option:selected'); selectedList.change(函数(){ removeCategory
i)纸张制造商=1){ var a=appendChoice(); 如果(a==2){ SetAvailableEchoice(AvailableEchoice-1); } }否则{ SetAvailableEchoice(0); } }); var option=selectedList.find('option:selected'); selectedList.change(函数(){ removeCategoryButton.prop(“禁用”,false); addCategoryButton.prop(“禁用”,true); _addRemoveButtonClickListener(); }); 函数_addRemoveButtonClickListener(){ removeCategoryButton.单击(函数(){ selectedList.find('option:selected').remove(); var availableechoice=getavailableechoice(); 如果(0
。选择管理类别,
.选择-manage-category1,
.选择-manage-category2{
宽度:100px;
浮动:左;
保证金权利:4px;
}
p{
清除:左;
文本对齐:居中;
}
#选定的lst值{
宽度:100%;
}
造纸厂
纸制品供应商
造纸化学品供应商
纸转换器
实验室仪器及用品
服务提供者
纸浆模塑制品
软件供应商
信息查询
您最多可以添加5个类别
保存类别
使用此脚本。如果尝试添加重复条目,它将显示警报。我已更改函数appendChoice()
$(文档).ready(函数(){
var firstCategorySelector='。选择管理类别';
var secondCategorySelector='.select-manage-category1';
var thirdCategorySelector='.select-manage-category2';
var firstCategory=$(firstCategorySelector);
var secondCategory=$(secondCategorySelector);
var thirdCategory=$(thirdCategorySelector);
var addCategoryButton=$(“#添加类别”);
var removeCategoryButton=$(“#删除类别”);
var selectedList=$(“#选定的lst值”);
风险值选择=$(“#目标”);
$('.选择管理类别、.select-manage-category1、.select-manage-category2')。更改(函数(){
AddCategoryButtoneable();
});
函数getCategoryValues(){
var firstCategoryValue=firstCategory.val();
var secondCategoryValue=secondCategory.val();
var thirdCategoryValue=thirdCategory.val();
返回[firstCategoryValue,secondCategoryValue,thirdCategoryValue];
}
函数IsDisabledButton(){
var values=getCategoryValues();
返回(!values[0]| |!values[1]| |!values[2]);
}
函数addCategoryButtoneable(){
var isDisabledCategoryButton=isDisabledButton();
addCategoryButton.prop(“disabled”,IsDisabledCategoryButton).toggleClass('text-bold',IsDisabledCategoryButton);
}
函数getNumberOfSelectedOption(){
返回selectedList.find(“选项”).length;
}
函数getAvailableEchoice(){
返回5-parseInt(getNumberOfSelectedOption());
}
函数集可用Echoice($numChoice){
var strText=($numChoice!==5)?$numChoice+“更多”:“最多5”;
选择文本(strText);
}
函数appendChoice(){
var givenCategoryArrayValue=GetCategoryValue();
如果($(')#选定的lst值选项:包含(“+givenCategoryArrayValue[0]+”请检查工作代码段
$(文档).ready(函数(){
var firstCategorySelector='。选择管理类别';
var secondCategorySelector='.select-manage-category1';
var thirdCategorySelector='.select-manage-category2';
var firstCategory=$(firstCategorySelector);
var secondCategory=$(secondCategorySelector);
var thirdCategory=$(thirdCategorySelector);
var addCategoryButton=$(“#添加类别”);
var removeCategoryButton=$(“#删除类别”);
var selectedList=$(“#选定的lst值”);
风险值选择=$(“#目标”);
$('.select manage category、.select-manage-category1、.select-manage-category2')。更改(函数(){
AddCategoryButtoneable();
});
函数getCategoryValues(){
var firstCategoryValue=firstCategory.val();
var secondCategoryValue=secondCategory.val();
var thirdCategoryValue=thirdCategory.val();
返回[firstCategoryValue,secondCategoryValue,thirdCategoryValue];
}
函数IsDisabledButton(){
var values=getCategoryValues();
返回(!values[0]| |!values[1]| |!values[2]);
}
函数addCategoryButtoneable(){
var isDisabledCategoryButton=isDisabledButton();
addCategoryButton.prop(“disabled”,IsDisabledCategoryButton).toggleClass('text-bold',IsDisabledCategoryButton);
}
函数getNumberOfSelectedOption(){
返回selectedList.find(“选项”).length;
}
函数getAvailableEchoice(){
返回5-parseInt(getNumberOfSelectedOption());
}
函数集可用Echoice($numChoice){
var strText=($numChoice!==5)?$numChoice+“更多”:“最多5”;
选择文本(strText);
}
函数appendChoice(){
var givenCategoryArrayValue=GetCategoryValue();
如果($('#selected lst values option:contains(“+GivenCategory ArrayValue[0]+'谢谢Vindhyachal Kumar:”)防止重复值工作正常。但是我也想这样做,如果我在第四个框中选择任何值,“删除类别”按钮应该启用,“添加类别”按钮应被禁用。如果未选择值且第四个框中没有值,则应禁用“删除类别”按钮,即只有在第四个框中选择了任何值时,才应启用“删除类别”按钮
$(document).ready(function () {
var firstCategorySelector = '.select-manage-category';
var secondCategorySelector = '.select-manage-category1';
var thirdCategorySelector = '.select-manage-category2';
var firstCategory = $(firstCategorySelector);
var secondCategory = $(secondCategorySelector);
var thirdCategory = $(thirdCategorySelector);
var addCategoryButton = $("#add-category");
var removeCategoryButton = $('#remove-category');
var selectedList = $('#selected-lst-values');
var choice = $("#target");
$('.select-manage-category, .select-manage-category1, .select-manage-category2').change(function () {
AddCategoryButtonEnable();
});
function getCategoryValues() {
var firstCategoryValue = firstCategory.val();
var secondCategoryValue = secondCategory.val();
var thirdCategoryValue = thirdCategory.val();
return [firstCategoryValue, secondCategoryValue, thirdCategoryValue];
}
function isDisableAddButton() {
var values = getCategoryValues();
return (!values[0] || !values[1] || !values[2]);
}
function AddCategoryButtonEnable() {
var isDisableAddCategoryButton = isDisableAddButton();
addCategoryButton.prop("disabled", isDisableAddCategoryButton).toggleClass('text-bold', isDisableAddCategoryButton);
}
function getNumberOfSelectedOption() {
return selectedList.find("option").length;
}
function getAvailableChoice() {
return 5 - parseInt(getNumberOfSelectedOption());
}
function setAvailableChoice($numChoice) {
var strText = ($numChoice !== 5) ? $numChoice + " more " : "up to 5 ";
choice.text(strText);
}
function appendChoice() {
var givenCategoryArrayValue = getCategoryValues();
if ($('#selected-lst-values option:contains("' + givenCategoryArrayValue[0] + ' << ' + givenCategoryArrayValue[1] + ' << ' + givenCategoryArrayValue[2] + '")').length > 0)
alert('Duplicate value not allowed.');
else
selectedList.append('<option value="">' + givenCategoryArrayValue[0] + ' << ' + givenCategoryArrayValue[1] + ' << ' + givenCategoryArrayValue[2] + '</option>');
}
addCategoryButton.click(function () {
var availableChoice = getAvailableChoice();
if (availableChoice >= 1) {
appendChoice();
setAvailableChoice(availableChoice - 1);
} else {
setAvailableChoice(0);
}
});
var option = selectedList.find('option:selected');
selectedList.change(function () {
removeCategoryButton.prop("disabled", false);
_addRemoveButtonClickListener();
});
function _addRemoveButtonClickListener() {
removeCategoryButton.click(function () {
selectedList.find('option:selected').remove();
var availableChoice = getAvailableChoice();
if (0 < availableChoice < 6) {
setAvailableChoice(availableChoice);
} else {
setAvailableChoice(0);
}
});
}
});