javascript - 在 ruby​​ on rails 中显示 flash 错误消息后,通过 javascript 保持更改的样式

标签 javascript html css ruby-on-rails ruby

我的 HTML(erb) 中有一个 div 部分,最初显示为“无”。然后我将其样式更改为“阻止”检测 datetimepicker 的输入值。

我已成功更改样式,但如果表单在验证后出现闪现错误消息,样式将反转为“无”。

有什么方法可以在出现错误消息后保持样式更改。

这是我的 javascript 代码。

  $('.datetimepicker').on('dp.change', function(e) { 
    var x = document.getElementById("from").value;
    var y = document.getElementById("to").value;
    var date_y = Date.parse(y);
    var date_x_day = Date.parse(x) + (1 * 86400000);

    if (date_y > date_x_day) {
      $('#hotel').fadeIn(500); 
    } else {
      $('#hotel').fadeOut(500);
    }
  });

我试图在“$('#hotel').fadeIn(500); ”之后添加以下行,但它不起作用。

document.getElementById('hotel').style.display="block";

谁能告诉我最好的方法??

最佳答案

所以你想在选择日期后显示酒店,但是在提交表单后页面将呈现一个日期值并且 dp.change 永远不会被触发。

您可以提取该匿名函数并在页面呈现后立即调用它。

function handleHotelVisibility(){
 // method body;
}
$(function(){
  handleHotelVisibility();
  $('.datetimepicker').on('dp.change', handleHotelVisibility);
});

关于javascript - 在 ruby​​ on rails 中显示 flash 错误消息后,通过 javascript 保持更改的样式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39773054/

相关文章:

javascript - 在选择特定单选按钮选择时动态更新 html 页面上的图像

html - 如何仅对 CSS 中给定的形状应用过滤器?

html - 在同一行中跨 bootstrap 列对齐多个元素

html - 为什么 CSS 样式在 Chrome 开发者工具中显示为灰色?

Javascript-将单击的对象作为参数发送到 onClick 函数中

c# - Javascript document.getElementById ('name' 出现错误)。返回空值

JavaScript:需要输入元素来根据输入的数据更改选项

javascript - 滚动到 anchor 不可预测

css - 为什么在ie中,绝对定位的标志是在右边?

javascript - 需要淡出 div 的帮助