我正在尝试使用Rails 3和JavaScript创建动态表单。我想在用户提问时添加新字段。但是我发现我无法从使用JavaScript创建的新字段中捕获值。我使用form_tag和text_field_tag来创建表单,其中id为hab_0,hab_1,hab_2。但是当我使用JavaScript函数(例如hab_3)生成一个新字段时,无法在控制器中捕获该值。 JS函数只是添加一个新字段。
所以,如果我通过form_tag创建了id为hab_0和hab_1的字段,我可以将控制器中的值捕获为params [:hab_0]和params [hab_1]。但是如果我使用JS函数生成一个新字段hab_2,我会得到params [:hab_2] = nil。
我想这与Rails用来防止CSRF攻击的secret_token值有关......但我不确定。
感谢阅读。我希望你能帮助我。
答案 0 :(得分:0)
你最好显示你的javascript代码;
尝试:
var input = document.createElement('input')
input.name = 'hab_2'
input.id='hab_2'
document.body.appendChild(input)