jquery - 根据 jQuery 中的输入值更改函数

标签 jquery html

我想要实现的是,当输入值为 0 或不存在时,#alert 应该能够显示。当输入值不是 0 时,即使选择了另一个选项,它也应该保持隐藏状态。

它应该像这样工作:

1) 选择一个选项

2)出现警告

3) 填充输入(0除外)

4)警报消失

5) 除非输入值更改为 0 或删除,否则它不会出现,即使您再次更改选项也是如此

jQuery('#mydiv').after('<span id="alert">alert</span>');
  jQuery('select').change(function() {
jQuery('#alert').toggle(this.value !== '');
});
#alert {
  display: block;
  display: none;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<div id="mydiv">
  <select>
    <option>1</option>
    <option>2</option>
    <option>3</option>
  </select>
</div>

<input value="">

最佳答案

试试这个:

jQuery('#mydiv').after('<span id="alert">alert</span>');

jQuery('select').change(function() {
  var input_val = jQuery('#some_input').val();
  var show_alert = (input_val == 0 || input_val == "");

  show_hide_alert(show_alert);
});

jQuery('#some_input').change(function() {
  var val = $(this).val();
  var show_alert = ( val == 0 || val == "" );

  show_hide_alert(show_alert);
});

function show_hide_alert(show) {
  if( show ) {
    jQuery('#alert').show();
  } else {
    jQuery('#alert').hide();
  }
}
#alert {
  display: block;
  display: none;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<div id="mydiv">
  <select>
    <option>1</option>
    <option>2</option>
    <option>3</option>
  </select>
</div>

<input id="some_input" value="">

关于jquery - 根据 jQuery 中的输入值更改函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46077193/

相关文章:

javascript - css 转换中的奇怪行为 :rotate

javascript - 根据给定日期突出显示日期单元格

javascript - 通过按钮单击事件 jQuery 将模型发送到 MVC C# Controller 的操作

javascript - Skrollr 样式表在 IE 中不起作用

javascript - 跨越文本的通用宽度

html - 为什么斜体字体不起作用

javascript - 设置 JavaScript 变量以便稍后检查定义

javascript - 排列图像缩略图

php - 使用 PHP 通过 email() 发送的电子邮件中的文本方向和对齐方式

javascript - 使用事件的 'li' 元素确定视频的源文件