2013-06-25 32 views

答えて

0

jQueryを使用すると、Railsがボタンに追加するdata-disable-with属性を削除できます。 $( '#disabledbutton')。removeAttr( 'data-disable-with');私はhereを見つけ

+1

ああボタンを見つけて実行する必要があり、非常に簡単、面白い。元の状態に戻す何かを探しています。それはそれをしていないようです。 – bevanb

+0

のようにbevanbが言った。これは要素を元の状態に戻すことはありません。 –

6

ソリューション:オートコンプリート=>「オフ」と今では動作します:

$(window).unload(function() { 
    $.rails.enableFormElements($($.rails.formSubmitSelector)); 
}); 
0

OK私は(明らかに問題がFFである)の周りに セットをこの興味深い仕事を見つけました。あるいは、もう1つの答えがうまくいくかもしれません。

REF:https://github.com/rails/jquery-ujs/issues/357私は次のコードになってしまった@DGMソリューションに基づいて

1

$.rails.enableFormElements($disabled_button); 

$disabled_buttondata-disable-withで無効になってボタンのjQueryオブジェクトである可能性次のように選択してください:

$disabled_button = $('[data-disable-with]'); 
8

reenableリンクの呼び出しは、フォーム要素と少し異なります。実際にハンドラをclickイベントにバインドして、何か他のことが起こらないようにします。私はinvestigating how the jquery-ujs libraryでこれを理解することができました。

は、単にあなたのjQueryオブジェクトに enableElementメソッドを使用して、この効果を逆にするには:Turbolinksで

$.rails.enableElement($('a[data-disable-with]')); 


、それはまた、window.unloadの代わりに'page:change'イベントを監視するのに役立ちます:

$(document).on('page:change', function() { 
    $.rails.enableElement($('a[data-disable-with]')); 
}); 
2

RailsはjQueryを使用しなくなるようにjavascriptを更新しました。

あなたは今、次の(あなたがまだのjQueryを使用していると仮定)を持つ要素を再度有効にすることができます

var selectors = [Rails.linkDisableSelector, Rails.formEnableSelector].join(', '); 
$(selectors).each(function() { 
    Rails.enableElement(this); 
}) 
0

ちょっとそのあなただけ

$button = $('#someId') 
$.rails.enableElement($button) 
$button.removeAttr('disabled') 
関連する問題