web-dev-qa-db-ja.com

無効なテキストフィールドを有効にする方法

送信時に無効なフォームテキストフィールドを有効にする方法を知りたい。また、ユーザーがフォームに戻るか、[リセット]フィールドをクリックすると、再び無効として表示されることを確認します。

使ってみた

document.pizza.field07.disabled = false ;

リセットをクリックするか、戻るボタンを押すことでフィールドを無効にしますが、有効のままになります。

ガイドしてください。

15
Hassan Z

より標準的な方法でこの要素にアクセスするには、 document.getElementById with setAttribute を使用します

document.getElementById("field07").setAttribute("disabled", false);

[〜#〜] edit [〜#〜]

コメントに基づいて、field07はnameであり、idではないようです。したがって、これはあなたが望むものでなければなりません:

var allfield7s = document.getElementsByName("field07");
for (var i = 0; i < allfield7s.length; i++)
    allfield7s[i].setAttribute("disabled", false);
19
Adam Rackis

それは私にとって唯一の有効なソリューションです:

var allfield7s = document.getElementsByName("field07");
for (var i = 0; i < allfield7s.length; i++)
    allfield7s[i].removeAttribute("disabled");
10
zajc3w

次のJavaScriptコードを使用して、無効なhtmlコントロールを有効にできます。

document.getElementById( 'elementId')。removeAttribute( 'disabled');

7
Bins Jose

jQuery でこれを行うこともできます:

_$(function(){
    $("[name='field07']").prop("disabled", false);
});
_

name属性が_field07_であるすべての要素を選択し(@AdamRackisの回答のコメントでそう言っているので名前を使用)、disabledプロパティをfalse

prop() の詳細。

2
Purag