2011-07-21 9 views
0

私はこのアプリケーションのすべてのページに表示されるMasterPageを持っていますが、このマスターページのDivタグ内にPageMethodsを使用する「LoginBox」をロードしようとしていますマスターページ内のdivタグの中にpagemethodsを含むページをロード

これまでのところ、私はコンテンツページ上でやってみて、ユーザーコントロールに変換しようとしましたが、サーバー側のインクルード(<! - #include file = "LoginBox.aspx" - >)を使ってみました。 成功しませんでした。

ウェブリソースが読み込まれるが、PageMethodsのjavascriptが作成されていないことがFirebugでわかります。

私は本当にこのためWebサービスを作成することを避けるためにしよう、とLoginBoxを動かしていますが、オプションではありません、私はむしろマスターページのアイデアをドロップしますが、その後のメンテナンスは地獄になるだろう。

私はこれに関するアイデアや方向性が必要です。 助けていただければ幸いです。

答えて

0

私はjavascriptから読み込まれたiframeで正常に動作していますが、私にとっては醜い解決策ですが、それでも問題はありません。私はあなたがASP.NET

ユーザーコントロールのポイントは、あなたがここでやっている正確に何をカプセル化することであると、従来のASPをマッシュアップしているよう

<script type="text/javascript"> 
    (function() { 
     var e = document.createElement('iframe'); 
     e.setAttribute("src", "LoginBox.aspx"); 
     e.setAttribute("scrolling", "no"); 
     e.setAttribute("frameborder", "0"); 
     e.setAttribute("height", "73px"); 
     e.setAttribute("width", "225px"); 
     e.setAttribute("marginheight", "0px"); 
     e.setAttribute("marginwidth", "0px"); 
     e.async = true; 
     document.getElementById('loginboxd').appendChild(e); 
    }()); 
</script> 
0

が私に見える、より良い解決策のために開いています。

でも、コードをコンポーネント化しようとすると、乱雑な混乱が起こります。可能であれば、ASP.NET MVCに移行することを検討してください。コードベースをきれいに保つために、はるかに適切でクリーンな作業を行うことができます。

+0

ありがとう、私は確かにそれを調べます。私はユーザーコントロールがこれで十分であることに同意しますが、PageMethodsはそれで動作しません。 –

関連する問題