我有一个jQuery对话框,想要设置其中一个按钮,使其看起来像默认按钮,同时仍然能够专注于表单元素。我能够使用下面的代码成功完成此操作,但我遇到的问题是当单击默认按钮时(而不是在命中输入时),我应用的样式被删除。我点击按钮后再尝试添加样式,但它没有用。有什么想法吗?
open: function ()
{
$('#FieldName').focus();
$(this).parent().find('button:nth-child(1)').addClass('ui-state-focus');
$(this).keydown(function (event)
{
if (event.keyCode == 13)
{
$(this).parent().find('button:nth-child(1)').trigger('click');
}
});
}
更新: 这是一个小提琴:http://jsfiddle.net/98v6Q/2/
要在使用小提琴代码时查看问题,请运行小提琴,然后单击对话框或表单中的任意位置。您会注意到按钮的默认状态仍然存在。点击“创建帐户”'按钮然后单击表单内部或外部的任何位置,您将注意到按钮状态发生变化,它不应该。
答案 0 :(得分:1)
你最好应用自己的CSS。
您应该在css中添加一个您声明的类,而不是.addClass('ui-state-focus');
。
IE:
.addClass('ui-button-primary');
然后在css
.ui-button-primary{
//Your style here
}