0

AJAX を使用してフォーム フィールドに入力されたコードを検証しています。有効な場合は有効であるというメッセージが表示され、そうでない場合は無効であるというメッセージが表示されます。この部分に関しては問題ありません。次にやりたいことは、コードが有効になるまで送信ボタンを無効にすることです。それ以外の場合、ユーザーは好きなものを入力してダウンロードページに行くことができます。私のスクリプトは以下の通りです:

$(document).ready(function(){

$("#orgname").change(function() { 

var usr = $("#orgname").val();

if(usr.length >= 2)
{
$("#status").html('<img align="absmiddle" src="images/loader.gif" /> Checking Code...');

$.ajax({ 
type: "POST", 
url: "checkcode.cfm", 
data: "orgname="+ usr, 
success: function(msg){ 

$("#status").ajaxComplete(function(event, request, settings){ 

if(msg == 'OK')
{ 
$("#orgname").removeClass('object_error'); // if necessary
$("#orgname").addClass("object_ok");
 document.getElementById("formsubmit").removeAttribute("disabled");
$(this).html(' <img align="absmiddle" src="images/accepted.png" /> ');
} 
else 
{ 
$("#orgname").removeClass('object_ok'); // if necessary
$("#orgname").addClass("object_error");
$(this).html(msg);
document.getElementById("formsubmit").setAttribute("disabled", "disabled");

}});}});}
else
{
$("#status").html('The Code should have at least 2 characters.');
$("#orgname").removeClass('object_ok'); // if necessary
$("#orgname").addClass("object_error");
}});});

私はAJAXも初めてです。ご覧のとおり、有効化スクリプトと無効化スクリプトを正しい場所に配置していますが、機能していません。ボタンに style または disable 属性を使用すると、無効のままになります。同様に、このページの読み込み時に JS を使用してボタンを無効にすると、ずっと無効のままになります。

任意の支援をいただければ幸いです。

4

1 に答える 1

3

$('#formsubmit').prop('disabled',true);とを使用し$('#formsubmit').prop('disabled',false);て、ボタンをそれぞれ無効および有効にします。jQueryはすべてのブラウザの違いを処理します。

于 2012-12-21T17:51:14.140 に答える