2012-03-11 6 views
1
私はこのように実行するスクリプトを作成したい

からクライアントスクリプトを実行している:(以下attempがある)作成とasp.net

protected void txtPassword_TextChanged(object sender, EventArgs e) 
{ 
     script = "<script type='text/javascript'>"; 
     script += "function showmsg(){"; 
     script += "$('#msg').slideDown('normal');"; 
     script += "$('#msg span').addClass('message');"; 
     script += "setTimeout('showmsg',100);"; 
     script += "}"; 
     script += "</script>"; 
     ClientScript.RegisterClientScriptBlock(this.GetType(), "ShowMessage",script); 
} 

は私のミスですが?なぜ走りがないのですか?スクリプトを仮定

+1

スクリプトを登録しましたが、どこで/いつshowmsg()メソッドを呼び出していますか? – Dinesh

+0

どのようにそれをtext_changedまたはtextbox_blurで実行できますか? – sap

答えて

0

は今、ページの一部、呼び出す必要がshowmsg()機能です:

<script type="text/javascript"> 
$(function() { 
    showmsg(); 
    }); 
</script> 

あなたはjQueryのを使用しているので、これはshowmsg機能でコードを実行する必要があります。

+1

コードを登録する理由は、loadまたはclickイベントで実行されますが、text_changedでは実行されません。 – sap

0

コードにこのようにスクリプトを登録する必要はありません。 javascript/jqueryを使用して、テキストボックスのテキストの変更を確認することができます。

jqueryを使用しているため、テキストボックステキストの変更が変更されたことを検出すると、standart JavaScriptと同じようにchange()イベントは機能しません。

類似のものが既に回答されているこのリンクをご覧ください。

https://stackoverflow.com/a/1481155/448407

は、この情報がお役に立てば幸いです。

0

スクリプトを登録する必要はありません。ただ、クライアント側で変更イベントを処理するために、次の操作を行います。

$(document).ready(function() { 
    $('#<%= txtPassword.ClientID %>').change(function() { 
    alert('Handler for .change() called.'); 
    }); 
}); 

あなたはjQueryを使ってそれを見つけるために、コントロールのClientIDプロパティを使用して、イベントを変更するには登録してください。

希望すると助かります!

0

アニメーションを適用するためにjqueryマークアップを使用しているようですが、jqueryではDOMを操作する前にドキュメントをロードする必要があります。

$(ドキュメント).ready(関数(){

//スクリプト

});

0

あなたのスクリプトは文字列であると言って忘れてしまったようですが、それはこのように動作します。

関連する問題