javascript - 在 javascript 和 ajax 中单击按钮时显示警报

标签 javascript jquery ajax

美好的一天。这里是新手...我的代码正在工作将..我的问题是单击按钮两次或两次以上后警报文本不再显示..我想要做的是如果我单击按钮一次则显示文本或者很多次没有刷新页面..这是我的代码...

脚本

<script type="text/javascript"> 
// Ajax post 
 $(document).ready(function() { 
 $(".submit").click(function() { 

var message = $("textarea#l_message").val(); 

 jQuery.ajax({ 
 type: "POST", 
 url: "<?php echo base_url(); ?>" + "admin/user_data_submit", 
 dataType: 'json', 
 data: {l_message: message}, 
 success: function(res) { 
 if (res) 
 { 
  // Show Entered Value 
 jQuery("div#msg").show(); 
 jQuery("div#msg").html('Update Successfully!'); 
 window.setTimeout(function() {
    $("#msg").fadeTo(1000, 0).slideUp(1000, function(){
        $(this).remove(); 
  });
}, 5000);
} else {
 } 
} 
 }); 
  return false; 
 }); 
}); 

 </script>

我的表格

<?php echo form_open();
                echo form_label('Librarians Message');
                ?>
                <textarea class="form-control" name="the_librarian" id="l_message">  </textarea>

                <?php echo form_submit('submit', 'Update',"class='btn btn-success navbar-btn submit'");?>
                <?php echo form_close();?>

 <div id="msg" style="color: green;">
 </div>

警报消息将在 5 秒后关闭,之后如果我再次单击该按钮,警报消息将不会显示。即使我多次单击按钮,我也想再次显示该消息...语法抱歉,..

帮我解决这个问题。

最佳答案

线路

$(this).remove();

正在从 DOM 中删除整个 #msg div,因此它不会再次显示。你可以使用

$(this).hide();

相反。

此外,不透明度仍为 0,因此请更改:

jQuery("div#msg").hide();

jQuery("div#msg").hide().css('opacity','1');

关于javascript - 在 javascript 和 ajax 中单击按钮时显示警报,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35182438/

相关文章:

javascript - 如何查找 URL.Javascript 中第一个参数的索引

javascript - d3 (v4) : giving elements the appearance of momentum?

jquery - 如何在jquery中编写快速切换列表?

javascript - ajax调用中的数组

python - 如何以json格式返回数据?

javascript - 传播算子

javascript - 同步本地存储

javascript - 如何创建停留 5 秒的加载弹出窗口

javascript - Jquery 脚本没有反应

php - 通过ajax接收数据,不将数据插入mysql数据库