我正在开发 Rails 应用。我的简单代码如下所示:
模型:
class Car < ActiveRecord::BaseWithoutTable
validates_presence_of :brand
end
控制器:
class CarsController < ApplicationController
def check
@user_car = Car.new(params[:car]);
if(@user_car.valid?)
end
end
视图:
<div id="car_check">
<% form_for :car, Car.new(), :url => "car/check" do |f| %>
<% if flash[:error] %>
<h2><%= flash[:error] %></h2>
<%end%>
...
<%= f.submit "send" %>
</div>
上述表单div
将在 jQuery-ui dialog
中打开,如下所示:
$("#car_check").dialog({
bgiframe: true,
autoOpen: false,
width: 500,
modal: true
});
当用户提交带有无效数据的car
模型表单时,我想在 jQuery-ui <上显示错误消息 / strong> dialog
,但是,当按下表单“dialog
”按钮时,submit
会关闭,这会使用户无法看到错误消息。 如何摆脱它?
答案 0 :(得分:0)
当用户点击提交按钮时调用的javascript函数在发生错误时必须返回布尔值false,否则在函数返回后提交表单。
<script type="text/javascript">
function errorCheck()
{
if (document.getElementById('mystring').value == 'error'
{
/* The user typed in "error" */
return false;
}
else
{
/* For anything else */
return false;
}
}
</script>
<form>
<input type="text" name="mystring" id="mystring">
<input type="submit" value="Submit" onsubmit="errorCheck()">
</form>
This post可能会帮助您使用Ruby代码。我不是Ruby程序员,所以这就是我通过搜索一下找到的。