1
 function ResendEmailInvite(internalUserId, familyMemberId) { 
       theinternalUserId = internalUserId;
       theFamilyMemberId = familyMemberId;
      if(confirm('Are you sure you want to resend this family member's invite?')){
         $.ajax({
             type: "POST",
             url:"/Admin/ResendFamilyMemberEmail",
             data: {internalUserId : theinternalUserId, familyMemberId : theFamilyMemberId}, 
             success: function(response){
                alert(response);
             },
             error: function(){
                alert("Error");
            }
        });
        return false;
    }
}

私は ASP.net MVC 3 を使用しています。これは私の見解ではajax/javascriptメソッドです。

構文に関する限り、これは正しいですか?

familyMemberId動的になりますが、そうでuserIdはありません。userIdviewModel からこの ajax 呼び出しにを渡したいのですが、どうすればよいですか?

4

1 に答える 1

1

やりたいことは、コントローラーのモデルからビューにデータを取得することです。これがMVCのすべてです。MSDN MVC 4 チュートリアルから:

コントローラ:

VS メニュー システムと Entity Framework を使用してモデルを定義できるため、実際にデータベースにアクセスできます。

 public class YourController : Controller
{
     private YourDBContext db = new YourDBContext();

     public ActionResult YourAction(int user_id = 0)
    {
        User user = db.Users.find(user_id);
        if(user == null) {
           return HttpNotFound(); // Or unauthorized or whatever
        }
        return View(user);
    }
    //...

意見:

@Model IEnumerable<MvcUser.Models.User>

<!-- other stuff -->

 <script type="text/javascript>
 // the rest of your script
        function ResendEmailInvite(internalUserId, familyMemberId) { 
           theinternalUserId = @Model.userId;
           theFamilyMemberId = familyMemberId;
          if(confirm('Are you sure you want to resend this family member's invite?')){
             $.ajax({
                 type: "POST",
                 url:"/Admin/ResendFamilyMemberEmail",
                 data: {internalUserId : theinternalUserId, familyMemberId : theFamilyMemberId}, 
                 success: function(response){
                    alert(response);
                 },
                 error: function(){
                    alert("Error");
                }
            });
            return false;
        }
    }

あなたが指摘したように、ページが読み込まれた後、userIdは動的ではないため、これは機能します。本当に動的な動作が必要な場合は、javascript が取得できるように、HTML に別のフックを作成する必要があります。

于 2013-03-08T19:31:50.660 に答える