2011-06-21 1 views
0

jQueryスクリプトでMVC2 <%:%>スクリプトブロックを組み合わせようとしています。ユーザーの入力を受け取り、Url.RouteUrl()を使用してフォームアクション属性を変更し、テキストボックスのフォーカスが失われたときにフォームをポストします。ここにappScript.jsファイルのセクションがありますjQueryでMVCスクリプトブロックを埋め込みます

$("input#txtSSN").blur(function() { 
    if ($(this).val() != undefined && jQuery.trim($(this).val()).length != 0) { 
     alert('txtSSN.blur() = ' + $(this).val()); 
     var formAction = '<%:Url.RouteUrl(new { controller = "controller1", action = "SSN", ID = escape(jQuery.trim($(this).val())) }) %>'; 
     $(this).parents('form:first').form.attr('action', formAction); 
     $(this).parents('form:first').submit(); 
    } //if 
}); //blur 

この.jsはSite.master "script src ="ブロックを参照しています。更新されたhrefでフォームを投稿しない以外はすべて動作します。ご協力いただきありがとうございます。

+1

MVC2コードは、ページがクライアントブラウザに配信される前にサーバーで実行されます。ブラウザに入ったら、そのスクリプトブロックコードをどの程度正確に実行すると思いますか?それはあなたのサーバーから遠く離れたコンピュータにあります。 – Pointy

+0

サーバは、Url.RouteUrl()が使用されているサーバスクリプトの部分を評価してはならないでしょうか?次に、html文字列をクライアントブラウザにフラッシュしますか?私はそれが "/コントローラ1/SSN/1234"を生成すると思った。私はそれがaspxファイルの

関連する問題