2012-05-02 8 views
0

この部分ビュー(別のビューに座っている)には、ボタン、空のdiv、およびJQueryがあります。 1回のクリックで読み込まれない理由は2つではありませんか?部分ビューをレンダリングするためにJQueryのボタンをダブルクリックする必要がある理由

<input id="btnPaymentAdd" type="button" value="Add Payment Info" /> 
</p> 
<div id="paymentSection"></div> 
<br />  

jQueryの...

$("#btnPaymentAdd").click(function() { 
    $("#paymentSection").load('/Donation/AddPaymentInfo'); 
    $("#paymentSection").show('slow'); 
}); 

コントローラー:

public ActionResult AddPaymentInfo() 
    { 

     var vModel = new PaymentViewModel(); 
     vModel.Payment = new Payments(); 
     vModel.PaymentType = new WCCDentalApp.Models.PaymentType(); 

     ViewBag.PaymentTypes = new SelectList(dbEntities.PaymentTypes.OrderBy(pt => pt.PaymentTypeID), 
     "PaymentTypeID", "PaymentType1", vModel.Payment.PaymentTypeID); 

     return PartialView("PaymentPView", vModel); 
    } 

答えて

2

あなたはページのロード後に.show()機能をバインドする必要があります...

$("#btnPaymentAdd").click(function(){ 
    $("#paymentSection").load('/Donation/AddPaymentInfo', function(){ 
     $(this).show('slow'); 
    }); 
}); 

かを使用できますは、次のように:それ以外の場合は

$("#btnPaymentAdd").click(function(){ 
    $.get('/Donation/AddPaymentInfo', function(data){ 
     $("#paymentSection").html(data).show('slow'); 
    }); 
}); 

、あなたはそれだけでロードするためのページを待たずに.show()を行います持っているように、あなたはそれが二回作品をクリックするように考えるようになります。

関連する問題