获取文本字段值并对其进行操作

时间:2019-06-01 12:09:25

标签: ruby-on-rails

我是Rails的新手,我需要实现一个解决方案作为项目的一部分。

我已经声明了变量并为其分配了值。

@variable = "TEXT"

,然后是一个文本框字段,其值等于@varaible

<input id="textfield" type="text" name="textfield" value="<%= @variable %>">

现在,我要检查文本字段值是否已更改。如果是更改,则需要覆盖@variable并将其设置为等于输入的文本,否则我需要使用初始化后的默认值。

我尝试使用onblur(),但不知道如何在rails变量中获取文本字段值并覆盖它。

我需要这样做,因为,还有另一个脚本将@variable作为参数之一。

1 个答案:

答案 0 :(得分:0)

首先设置初始值,然后再进行模糊检查以检查其是否已更改:

<input id="textfield" type="text" name="textfield" value="<%= @variable %>" onblur="changed(this);">

VALUE = document.getElementById('textfield').value;

function changed(e){
  if(e.value == VALUE){
    // Do nothing if value is not changed
  } else {
    Rails.ajax({
      url: "url for the page",
      type: "GET",
      data: "variable=" + e.value,
      success: function(data) {
        console.log(data);
      }
    });
  }
}

现在在控制器中,您可以访问参数并覆盖变量。