简体   繁体   English

如何在javascript中每个会话一次显示更改事件警报弹出窗口?

[英]How to show change event alert popup once per session in javascript?

I have a list of dropdown values which should alert popup once per session in javascript. 我有一个下拉列表值,应该在javascript中每个会话提醒一次弹出式窗口。 On change how to alert for any value in dropdowns but it should be for one select value (dropdown). 更改时,如何提醒下拉列表中的任何值,但应针对一个选择值(下拉列表)。 I have tried to alert. 我试图提醒。 please suggest how to achieve it using session storage in javascript. 请建议如何使用JavaScript中的会话存储来实现此目标。

 jQuery("#dim_height").on('focus', function() { // Store the current value on focus and on change previous = this.value; }).change(function() { var r1 = confirm("Are you sure want to change the template?"); if (r1 == true) { calci_width(); } else { jQuery(this).val(previous); return; } //reset_template(previous); //calci_width(); }); jQuery("#dim_width").on('focus', function() { // Store the current value on focus and on change previous = this.value; }).change(function() { var r = confirm("Are you sure want to change the template?"); // console.log(r); if (r == true) { calci_width(); } else { jQuery(this).val(previous); return; } }); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <select name="dim_width" id="dim_width" class="drop"> <option value="8">8</option> <option value="12">12</option> <option value="18">18</option> <option value="24">24</option> <option value="36">36</option> <!-- <option value="48">48</option> <option value="72">72</option> <option value="84">84</option> <option value="96">96</option> --> </select> <select name="dim_height" id="dim_height" class="drop"> <option value="8">8</option> <option value="12">12</option> <option value="18">18</option> <option value="24">24</option> <!-- <option value="36">36</option> <option value="48">48</option> --> </select> 

Here's an example of how you can alert once per session using a cookie: 这是一个示例,说明如何使用Cookie在每个会话中发出一次警报:

<script 
src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"> 
</script><!-- notice jquery version change-->
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery- 
cookie/1.4.1/jquery.cookie.min.js"></script><!-- added cookie plugin-->

<select name="dim_width" id="dim_width" class="drop">
    <option value="8">8</option>
    <option value="12">12</option>
    <option value="18">18</option>
    <option value="24">24</option>
    <option value="36">36</option>
</select>

Then using jquery: 然后使用jQuery:

$('#dim_width').on('change', function(){
     if (typeof $.cookie('alerted') === 'undefined'){//does cookie exist?
         var Selected = $('#dim_width').val();
         alert(Selected); //if not alert value
         $.cookie("alerted", 1); //then set cookie, will expire one browser closes 
      }
 })

Fiddle: https://jsfiddle.net/9wxwfs4c/2/ 小提琴: https : //jsfiddle.net/9wxwfs4c/2/

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM