当用户选择一个选项、导航离开或选择相同的选项时,如何隐藏元素?

扎克·哈里奥特

我正在练习一些JQuery,并且正在开发一个简单的应用程序,询问用户他们最喜欢的食物和饮料是什么。

我正在尝试创建应用程序,以便生成的文本...“您最喜欢的食物是 x,饮料是 y”,仅在用户实际选择了他们最喜欢的食物/饮料以及他们没有主动选择时显示。

我的问题是,我无法弄清楚如何在用户选择选项时隐藏结果文本,这种方式还可以在进行选择后显示文本。我使用了一个 change() 方法,它允许我在他们选择新内容时显示文本。但是如果用户点击离开,或者选择相同的选项呢?

想法?

这是代码...

http://codepen.io/zharriott/pen/oZxvBO?editors=1011

$(document).ready(() => {
  /******************
  REFERENCES
  ******************/
  const $foodSelector = $('.questions__q1'),
      $drinkSelector = $('.questions__q2'),
      $dropdownInputs = $('.questions select'),
      $foodResultTxt = $('.result__fav-food'),
      $drinkResultTxt = $('.result__fav-drink'),
      $result = $('.result'),
      $resultTxt = $result.text();

  /******************/
  $dropdownInputs.change(() => {
    //IF food/drink has not been selected, leave result hidden
    if ( $foodSelector.find(':selected').text() === 'Select an option...' || $drinkSelector.find(':selected').text() === 'Select an option...' ) {} 
    else {
      //Update and show result to display user's current answers
      $foodResultTxt.text($foodSelector.find(':selected').text());
      $drinkResultTxt.text($drinkSelector.find(':selected').text());
      console.log($resultTxt);
      $result.show(1400);
    }
  });
});

想法?

斯特凡诺·扎尼尼

您可以考虑将输入的当前值与focus事件一起保存,然后将选定的值change与前一个值和占位符进行比较。

$dropdownInputs.focus(function(){
    var oldFoodValue = $foodSelector.find(':selected').text();
    var oldDrinkValue = $drinkSelector.find(':selected').text();
}).change(() => {
    //IF food/drink has not been selected or is equal to the previous value, leave result hidden
    if ( $foodSelector.find(':selected').text() === 'Select an option...' ||
         $drinkSelector.find(':selected').text() === 'Select an option...' ||
         $foodSelector.find(':selected').text() === oldFoodValue ||
         $drinkSelector.find(':selected').text() === oldDrinkValue) {} 
    else {
      //Update and show result to display user's current answers
      $foodResultTxt.text($foodSelector.find(':selected').text());
      $drinkResultTxt.text($drinkSelector.find(':selected').text());
      console.log($resultTxt);
      $result.show(1400);
    }
  });

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

当用户从上一个元素中选择一个选项时,如何显示隐藏的元素

来自分类Dev

当用户选择一个选项时,打开另一个输入文本

来自分类Dev

当用户在jQuery中选择一个选项时,如何获取选择框的值和价格?

来自分类Dev

当用户从下拉菜单中选择一个选项时,如何更新任何归档的文本?

来自分类Dev

选择第一个选项时使用jQuery,然后隐藏其他元素

来自分类Dev

用户想要选择一个选项后如何增加/减少“选择”选项的宽度

来自分类Dev

当我有五个具有相同选项和值的选择时,如何从另一个选择标签中删除选定的选项?

来自分类Dev

jQuery如何选择第一个非隐藏的选择选项

来自分类Dev

如何选择在另一个页面中选择的相同选项

来自分类Dev

如何选择在另一个页面中选择的相同选项

来自分类Dev

当用户希望在从一个选项卡导航到另一个选项卡时不自动刷新它时如何刷新 webViewController

来自分类Dev

在选择中隐藏第一个选项

来自分类Dev

选择一个选项后无法显示隐藏的div

来自分类Dev

如何使<select>元素不选择默认选择的第一个选项?

来自分类Dev

我的选择框如何选择一个选项值?

来自分类Dev

jQuery选择:选择1个选项,然后在另一个选择菜单中取消选择相同的选项

来自分类Dev

当下拉菜单具有相同的ID时,如何从下拉菜单中选择一个选项

来自分类Dev

当用户选择一个项目时如何获得 <select> 的值

来自分类Dev

更改基于另一个选择选项显示的选择,并保持相同的选项值

来自分类Dev

在R /闪亮中取消选择最后一个选项时,如何选择全部?

来自分类Dev

Javascript-如果选择了一个选项,则使元素消失

来自分类Dev

几个选择 - 选择在一个选择选项时复位剩余选择

来自分类Dev

选择一个选项时,select元素上的jQuery事件(不更改)

来自分类Dev

跳到下一个元素时,禁用“选择语义UI”下拉选项

来自分类Dev

选择一个选项(无线电)时,禁用某些输入元素

来自分类Dev

单击时更改表单选择选项,然后选择另一个选项

来自分类Dev

调用脚本时在脚本中选择一个选项

来自分类Dev

AngularJS在加载时选择一个空选项

来自分类Dev

如何使ng-select成为必需,以便用户必须选择一个选项

Related 相关文章

  1. 1

    当用户从上一个元素中选择一个选项时,如何显示隐藏的元素

  2. 2

    当用户选择一个选项时,打开另一个输入文本

  3. 3

    当用户在jQuery中选择一个选项时,如何获取选择框的值和价格?

  4. 4

    当用户从下拉菜单中选择一个选项时,如何更新任何归档的文本?

  5. 5

    选择第一个选项时使用jQuery,然后隐藏其他元素

  6. 6

    用户想要选择一个选项后如何增加/减少“选择”选项的宽度

  7. 7

    当我有五个具有相同选项和值的选择时,如何从另一个选择标签中删除选定的选项?

  8. 8

    jQuery如何选择第一个非隐藏的选择选项

  9. 9

    如何选择在另一个页面中选择的相同选项

  10. 10

    如何选择在另一个页面中选择的相同选项

  11. 11

    当用户希望在从一个选项卡导航到另一个选项卡时不自动刷新它时如何刷新 webViewController

  12. 12

    在选择中隐藏第一个选项

  13. 13

    选择一个选项后无法显示隐藏的div

  14. 14

    如何使<select>元素不选择默认选择的第一个选项?

  15. 15

    我的选择框如何选择一个选项值?

  16. 16

    jQuery选择:选择1个选项,然后在另一个选择菜单中取消选择相同的选项

  17. 17

    当下拉菜单具有相同的ID时,如何从下拉菜单中选择一个选项

  18. 18

    当用户选择一个项目时如何获得 <select> 的值

  19. 19

    更改基于另一个选择选项显示的选择,并保持相同的选项值

  20. 20

    在R /闪亮中取消选择最后一个选项时,如何选择全部?

  21. 21

    Javascript-如果选择了一个选项,则使元素消失

  22. 22

    几个选择 - 选择在一个选择选项时复位剩余选择

  23. 23

    选择一个选项时,select元素上的jQuery事件(不更改)

  24. 24

    跳到下一个元素时,禁用“选择语义UI”下拉选项

  25. 25

    选择一个选项(无线电)时,禁用某些输入元素

  26. 26

    单击时更改表单选择选项,然后选择另一个选项

  27. 27

    调用脚本时在脚本中选择一个选项

  28. 28

    AngularJS在加载时选择一个空选项

  29. 29

    如何使ng-select成为必需,以便用户必须选择一个选项

热门标签

归档