Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/394.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在Rails表单中获取文本字段的新值? $(函数(){ $(文档)。在“单击”、“匹配”和“提交”功能(事件)上{ $.ajax('我的控制器\方法'{ 键入:“GET”, 数据类型:“脚本”, 数据:{ mid:$(“#”).val(),//如何获取在“匹配id”文本字段中输入的新值? }, 错误:函数(jqXHR、textStatus、errorshown){ 返回console.log(“AJAX错误:+textStatus”); } }); });_Javascript_Ruby On Rails - Fatal编程技术网

Javascript 如何在Rails表单中获取文本字段的新值? $(函数(){ $(文档)。在“单击”、“匹配”和“提交”功能(事件)上{ $.ajax('我的控制器\方法'{ 键入:“GET”, 数据类型:“脚本”, 数据:{ mid:$(“#”).val(),//如何获取在“匹配id”文本字段中输入的新值? }, 错误:函数(jqXHR、textStatus、errorshown){ 返回console.log(“AJAX错误:+textStatus”); } }); });

Javascript 如何在Rails表单中获取文本字段的新值? $(函数(){ $(文档)。在“单击”、“匹配”和“提交”功能(事件)上{ $.ajax('我的控制器\方法'{ 键入:“GET”, 数据类型:“脚本”, 数据:{ mid:$(“#”).val(),//如何获取在“匹配id”文本字段中输入的新值? }, 错误:函数(jqXHR、textStatus、errorshown){ 返回console.log(“AJAX错误:+textStatus”); } }); });,javascript,ruby-on-rails,Javascript,Ruby On Rails,我有上面显示的表单和JavaScript块 如何获取JavaScript代码中“match_id”文本字段中输入的新值?感谢@JeremyThille的回答: <%= f.text_field :match_id, style: "width:82px", id: "debit_match_id" %> # add id in text field to get the value $(“#借方匹配_id”).val(); 这将给出在文本字段中输入的新值(debit_match_i

我有上面显示的表单和JavaScript块


如何获取JavaScript代码中“match_id”文本字段中输入的新值?

感谢@JeremyThille的回答:

<%= f.text_field :match_id, style: "width:82px", id: "debit_match_id" %>
# add id in text field to get the value
$(“#借方匹配_id”).val();


这将给出在文本字段中输入的新值(debit_match_id是文本字段的HTML id。JavaScript使用HTML id而不是ruby模板id)

您需要了解ERB是一个存在于服务器上的模板,然后被编译为HTML(意味着,所有ERB代码完全消失),然后将生成的HTML发送到浏览器,然后执行JS代码

JS只会看到并处理生成的HTML,它不知道是否存在ERB或PHP,也不知道使用了什么模板语言来生成它所处理的HTML


ERB模板的结果将是
,因此在JS/jQuery中选择它的正确方法是
$(“#debit_match_id”)

呈现的HTML是什么?Javascript将与最终的HTML一起工作,而不是Rails模板。如果我进行检查,这是我为相关文本字段看到的HTML代码-
$(“#debit_match_id”)那就行了!谢谢!如果我想在JavaScript函数的
erb
代码块中访问相同的值(文本字段),我该怎么做呢?(我想计算文本字段中输入的值,如果有错误,会显示一个警报)执行JS时,ERB代码不再存在。它在服务器上被编译成HTML,然后发送到浏览器,然后JS被执行。JS不知道ERB的存在。或者我可以自己发布这个答案,你也可以验证它:DYou可以现在发布答案-我会标记它-我需要2天来标记我的答案自己的答案。我宁愿现在就记下你的答案,也不愿忘记在两天内记下自己的答案:)所以,请继续吧!这个行为的答案和问题加上1:)
data: { mid: $('#debit_match_id').val(); }  // get the new value entered in 'match_id'