我想在用户点击关闭btn时关闭模态.我认为我需要从modal.js覆盖这部分代码:
hide: function (e) {
e && e.preventDefault()
var that = this
e = $.Event('hide')//if I delete this line modal won't hide
this.$element.trigger(e)
if (!this.isShown || e.isDefaultPrevented()) return
this.isShown = false
$('body').removeClass('modal-open')
escape.call(this)
this.$element.removeClass('in')
$.support.transition && this.$element.hasClass('fade') ?
hideWithTransition.call(this) :
hideModal.call(this)
Run Code Online (Sandbox Code Playgroud)
我在正确的道路上吗?
我需要发送json响应取决于用户在输入中输入的数据,但我没有发送简单的json请求.
我按照这篇文章 - http://paydrotalks.com/posts/45-standard-json-response-for-rails-and-jquery.
添加了MimeType:
Mime::Type.register_alias "application/json", :jsonr, %w( text/x-json )
Run Code Online (Sandbox Code Playgroud)
在我的控制器中:
def checkname
respond_to do |format|
format.jsonr do
render :json => {
:status => :ok,
:message => "Success!",
:html => "<b>congrats</b>"
}.to_json
end
end
end
Run Code Online (Sandbox Code Playgroud)
但屏幕是空的,当我对此操作组成GET响应时,这里是来自fiddler2的响应代码:
HTTP/1.1 406 Not Acceptable
Content-Type: text/html; charset=utf-8
X-UA-Compatible: IE=Edge
Cache-Control: no-cache
X-Request-Id: 14a8467908d9ce322d054607efdacf92
X-Runtime: 0.011000
Content-Length: 1
Connection: keep-alive
Server: thin 1.4.1 codename Chromeo
Run Code Online (Sandbox Code Playgroud)
我做错了什么?
我有这样的麻烦:我使用Bootstrap模态进行身份验证.
当用户打开登录模式时,他可以去注册模态(或其他).所以,我需要关闭前一个.
现在我这样关闭他们:
$(document).ready(function(){
$("a").click(function() {
$("#login").hide();
$("#sign_up").hide();
})
});
Run Code Online (Sandbox Code Playgroud)
但是当我这样做时 - 我无法重新开启登录模式(点击登录后注册),直到我刷新页面.
有人可以建议如何检查我点击链接的模态并关闭它,当打电话给另一个?是否有任何通用的方法来关闭以前的模态?
我知道如何覆盖默认控制器并且它正在工作,但现在我需要在Registrations控制器中添加新操作.
我需要更新用户字段.我需要在此表单中添加名字和姓氏,但我不想使用标准的编辑页面,因为它将是单独的页面.
所以我需要其他页面.我在我的注册文件夹中有paypal..html.erb,但是我无法从注册控制器中的操作中呈现它.
Paypal行动:
class RegistrationsController < Devise::RegistrationsController
def paypal
end
...
end
Run Code Online (Sandbox Code Playgroud)
routes.rb中:
devise_for :users, :controllers => {:registrations => 'registrations', :sessions => 'sessions'} do
match 'paypal' => 'registrations#paypal'
end
Run Code Online (Sandbox Code Playgroud)
但不知何故,它呈现新的注册文件.这是错误:
NoMethodError in Registrations#paypal
Showing C:/1508/app/views/devise/registrations/new.html.erb where line #22 raised:
Run Code Online (Sandbox Code Playgroud)
我如何使用更新表单来执行此操作以及我做错了什么?
我没有使用jQuery验证检查当前密码.我正在使用Devise gem和jQuery验证.萤火虫说:
问题出在我的控制器中:
def checkpass
user = User.find_by_email(params[:user][:email])
respond_to do |format|
if user && user.authenticate(params[:user][:password])
format.json { render :json => @user }
end
Run Code Online (Sandbox Code Playgroud)
结束
使用此代码,Firebug给了我错误
406 Not Acceptable
end
Run Code Online (Sandbox Code Playgroud)
checkemail唯一性动作的例子:
def checkemail
@user = User.find_by_email(params[:user][:email])
respond_to do |format|
format.json { render :json => !@user }
end
end
Run Code Online (Sandbox Code Playgroud)
我的js:
$("#edit_password").validate({
"user[current_password]":{
required: true,
minlength: 6,
remote: {
url: "http://127.0.0.1:3000/checkpass"
}
...
})
Run Code Online (Sandbox Code Playgroud)
和HTML:
<input type="password" size="30" name="user[current_password]" id="user_current_password" class="valid">
Run Code Online (Sandbox Code Playgroud)
有人可以建议怎么做吗?
我正在使用Twitter Bootstrap,当我在移动设备上打开它时,我的网站有一些问题.
我的标题看起来非常糟糕,当我调整窗口大小时,它看起来像这样:

在所有设备中应该是这样的:

这是我的HTML:
<ul class="nav pull-right">
<li><a href="index.html"><b>Home</b></a></li>
<li class="divider-vertical"></li>
<li class="dropdown">
<a href="#" class="dropdown-togle" data-toggle="dropdown">
<b>Download</b>
<b class="caret"></b></a>
<ul class="dropdown-menu">
<li><a href="downloading_link.html">Meepo for iPhone</a></li>
<li><a href="#" id="not_active">Android coming soon</a></li>
</ul>
</li>
<li class="divider-vertical"></li>
<li><a href="faq.html"><b>F.A.Q.</b></a></li>
<li class="divider-vertical"></li>
<li><a href="support/index.html" id="last_link"><b>Support</b></a>
</li>
</ul>
Run Code Online (Sandbox Code Playgroud)
和CSS:
.navbar .nav.pull-right {
margin-left: 10px;
margin-top:40px;
margin-right: 0;
background-image: url('../img/menuBG.png');
background-repeat: no-repeat;
height:57px;
}
Run Code Online (Sandbox Code Playgroud)
我想我需要删除背景图片,以便在移动设备上使用.
我可以在moble设备上使其看起来更好(与PC相同)吗?我只需要为手机写一些新的CSS吗?也许我不应该使用响应式CSS来调整大小?