2013-10-29 12 views
5

私は自分のiPadで作成したフォームをチェックしていましたが、disabled<button>タグに追加しても、実際にボタンは無効にならないようです。iOS Safari <ボタン無効></button>は無効になっていませんか?

<input>タグにdisabledを追加すると動作しますが、<button>では動作しません。

ので

<input type = "text" disabled />

作品が、

<button disabled>Hola</button>

はしていません。これを修正する方法の考え?それともサファリバグですか?

答えて

1

<input />タグではdisabled属性を使用できますが、<button />タグでは使用できません。ボタンが正式に減価償却されていませんが、あなたは、一般的な普通の古いボタンの

<input type="submit" value="Click Me"> 
フォーム送信機能の

<input type="button" value="Click Me"> 

を行うことができますので、全体の異なるタグを有することに本当のポイントはありません。さらに、あなたはこのISO Safariのバグがひどいですdisabled

<input type="submit" value="You can't Click Me" disabled> 
<input type="button" value="Click Me" disabled> 
0

私の居住用のiPadでこれを確認しました。あなたはbuttonタグが機能しないこと正しいが、これらは行います

<input type="button" value="Go on, click me!"> 

<input type="submit" value="Go on, click me!"> 

私はそれがあなたの問題を解決したいと考えています。 <button></button>でできることは、<input type="button">または<input type="submit">とすることができます。 iOS Safariのバグでなければなりません。

EDIT:

Button Chromeでdisabledを受け入れないので、私は、iOS上のSafariを非難。

EDIT:

Fiddleを参照してください。

+0

私はそれほど大したことは考えていませんでしたが、友人が私にそれを言いました。私はそれを調べ始めました。実際には、完全なバグであるようです。他の誰もそれについて本当に話しているわけではないか、そうだ。私はあなたが ''を使うことができることを知っていますが、これはあなたのブラウザーにある簡単な機能のようです。数年前に確立された機能に準拠していることはわかっています。 –

+0

@Nick Chapmanそれはインターネットに接続された時代(それは魔法的です)でもブラウザの互換性について心配する必要があることは残念です。しかし、私たちはします。だから、あなたは愚かなブラウザを無視するか、それを試して対処することができます。通常、最良のソリューションは妥協です。あなたはElinksをサポートしようと時間を無駄にしてはいけませんが、たくさんの人がそれを使い続けているのでIEについて心配してください。 –

+0

私はこれがすべて役立つことを願っています。無効なボタンを使って何かをしているのなら、あなたが見ているように、iOS Safariは何とかそれを壊してしまうので、 '

2

を追加することにより、双方の提出や定期的なボタンを無効にすることができます。 IPadが点滅タグをサポートしていますか?あなたが知っている限り、あなたは本当に<input>のようなスタイルはできません。<button>さんのように。だから<button><span>のスタイルがあるか、またはbutton<img>の場合は<input>の方がいいです。代わりにそれを偽装し、属性が「無効」であるようにボタンを動作させます。

あなたのボタンにクラスを追加します。

<button class='ipad-disabled'></button>

そして、それがない場合は、そのボタンをクリックすると、何も起こりません、そのボタンが「iPadの-無効」のクラスを持っているかどうかを確認します。

$('button').on('click', function() { 
    if (!$(this).hasClass('ipad-disabled')) { 
     doSomething(this); 
    } 
}); 

その後、あなたは<button>を有効にする必要がある場合に 'iPadの-無効' クラスの削除:

$('button').removeClass('ipad-disabled'); 
関連する問題