我正在创建一个ajax表单,它会在我的rails应用程序中成功完成'create'方法后执行一些函数。它围绕查找单词的定义,显示它们,然后在用户保存所需定义后将其从屏幕中删除。我遇到的问题是从success.js.erb访问函数rollUp和revertButtons(存储在words.js中)。我甚至尝试将函数放在application.js中,但它仍然无效。现在,当文件中包含这些函数时,success.js.erb甚至根本不执行...有什么想法吗?
创建行动:
if @word.save!
params['word_definition'].each do |definition|
if @word.definitions.create(text: definition)
numDefs += 1
end
end
respond_to do |format|
if numDefs > 0
format.js { render action: "success" }
end
end
else
format.js { render action: "failure" }
end
words.js:
function submitForm(){
if(isSubmittable()){
$('#findWord form').serialize();
$('#findWord form').submit();
}
}
// other functions, like revertButtons() and rollUp() are stored here too
success.js.erb:
revertButtons();
rollUp();
$('<div />', { class: "alert alert-success",
text: "The word has been saved",
}).wrap('<div class="single_error" />').parent().appendTo("#fieldAndErrorsContainer");
答案 0 :(得分:0)