我计划做的功能是根据从选择标签中选择的数字插入一些表单元素。
我有一个名为 number_of_passengers 的选择标签,我计划为所选号码动态附加新的乘客字段。假设我从 number_of_passengers 中选择 2,那么 2 个表单应该出现在字段集中。这些表格包含姓名、年龄体重等。
我试着遵循这个:
并将其转换为haml-speak,但每当我使用 :javascript 标签时都会出错。此外,我认为一旦进入其中,我就无法“逃脱”javascript标签
:javascript
$('#number_of_passengers').change(function() {
var $num_of_passengers = $(this).val();
for($i=0; $i<$num_of_passengers;$i++) {
$('.passenger-info ul').append('<%= escape_javascript( render :partial => "new_passenger", :locals => {:booking => @booking }) %>');
}
})
另外,由于我在 form_for 中,如何将@booking 变量传递给本地?它看起来真的很复杂,我打算做一些肮脏的方式,而不是只循环 20 次(最多 20 名乘客),然后根据所选的数字隐藏/显示它们。但这太脏了,你不觉得吗?