2012-03-03 7 views
0

Webアプリケーションを開発するためにmvc 4.0を使用しました。ポケットベルとデータリストを作成しました。これはうまくいきました。いくつかのjqueryコードで実装し、$ .get jqueryメソッドを定義して、 :コントロール内の他の側にmvcの部分レンダリング後にスクリプトが実行されないのはなぜですか?

$.get("http://localhost:13824/bid/index?page=8&script=1", function(data) { 
     $Element.html(data); 
} 

私は次のようなアクションメソッドを持つ:Webユーザーコントロールの

public ActionResult Index(string provinceNo="21", int page=1, string script="0"){ 
    if(script=="1") { return PartialView("mypartialwebusercontrol",model); } 
    else // do something else; 
} 

私はそれがすべての項目をロードするいくつかの項目を持っていると私のポケベルは非常に素晴らしい動作しますが、そこにありますポケベルをクリックしたときにポップアップウィンドウを開くための各項目に$ .getメソッドというリンクがあります。すべてのクリックイベントとスクリプトは再び発生しません。

私のWebユーザーコントロールは、このようなものです:

<% control language="c#" inherits="system.web.mvc.viewusercontrol<model>" %> 
<% foreach(var item in model) { %> 
<div id="card1"> 
    <a class="linkbutton"> item.text1 </a> 
</div> 
<% } %> 

クリックスクリプトのすべてが$に.getメソッドの呼び出し後に停止されます。あなたは「コンストラクタで」によって意味が、私は、問題の2つの原因を見ることができるものそれでも

+0

に起こって見ることができるページへのリンクを提供する必要があります場合はユーザーコントロール内のリンクが$ .getメソッドを起動し、そのときにどのスクリプトが停止していますか?私はそれが明確でないならあなたが言っていることだと思います。 –

+0

$( ".linkBut​​ton")。bind({click:$ .proxy(this.linkbuttonClick、this)}); jqueryクラスのコンストラクタと関数を追加します – kamiar3001

+0

すべてのスクリプトはlinkbuttonclickのように停止します:function(e){alert( "hi"); } – kamiar3001

答えて

0

わからない:あなたがHTMLをロードし、その結果linkBut​​tonsが上がらない前に

  • 一つ、あなたはバインドを実行しています縛られている。解決策は、読み込み後にバインドを実行するか、読み込み中のコンテナに.delegateを使用することです。
  • 2つ目は、ブラウザが$ .getメソッドまたはそれ以降のjavascriptを実行しているときにエラーが発生し、それ以上スクリプトを実行しないことです。

そのこれらのどちらも、あなたはあなたのJavascriptの完全なリストや私や他の誰かが正確に何があなたがより明確にどのように説明することができ

関連する問題