编程语言
首页 > 编程语言> > javascript-使用SELECT选项的jQuery启用/禁用显示/隐藏按钮.获取剩余的期权价值

javascript-使用SELECT选项的jQuery启用/禁用显示/隐藏按钮.获取剩余的期权价值

作者:互联网

我有一个选择列表,正在使用文本字段中的值进行填充.我也有两个按钮:一个添加按钮,它将输入的值添加到选择列表中;一个删除按钮,将输入的值从选择列表中删除.我想使用jQuery执行以下操作:

>如果在选择列表中输入文本字段的值不可用,请显示添加按钮,然后隐藏删除按钮.
>如果在选择列表中输入到文本字段的值可用,请隐藏添加按钮并显示删除按钮.
>如果选择列表为空,请显示添加按钮,并隐藏删除按钮.

这是我想出的一些代码:

// Remove selected options
$('#removeButton').click(function() {
   //$.map($('#addedchargeamtid :selected'), function(e) {
   $.map($('#addedchargeamtid option'), function(e) {
      var exp = $(e).text();
      // Would like to have all the Option values in CVS format 0.00,1.99, etc...
      // If removed this should also remove the value in the array
   })

   $('#removeButton').hide();
      return !$('#addedchargeamtid :selected').remove();
   });

   // Add charge amount
   $('#addedchargeamtid option:selected').focus(function() {
      $('#removeButton').show();
   });

当我添加第一个值时,它将显示“删除”按钮,但是如果删除该值,则该按钮将不会显示.

更新:

好的,我已经对此进行了编辑.

$('#removeButton').click(function() {
   $('#addedchargeamtid :selected').remove();

   $.map($('#addedchargeamtid option'), function(e) {
      var exp = $(e).text();
      alert(exp); // Need this in CSV format but I think it displays the correct values
   })

   //if($("#addedchargeamtid option").length > 0) {  <-- Didn't work                
   if($("#addedchargeamtid").length > 0) {
      $('#removeButton').show();
   } else {
      $('#removeButton').hide();
   }
});

当SELECT中没有值时,仍然不会隐藏按钮.也尝试过该选项.

解决方法:

我相信您可以检查选项长度是否大于0,表示它具有值,如果没有,则它不存在,意味着它没有这样的值:

if($("#addedchargeamtid option").length > 0 ) //if addedchargeamtid is the id of select tag
{
   $('#removeButton').show();
}
else
{
  $('#removeButton').hide();
}

标签:dhtml,javascript,jquery
来源: https://codeday.me/bug/20191011/1896475.html