2012-05-19 52 views
0

我有這個下面的jQuery加載局部視圖在一個div使用jQuery負載通ID

var acc = this.id;  
$('#details').load('/AccountAndTransaction/Grab', function (html) 
      { $('#details')[0].value = html; }); 

,其工作良好,但現在我想通過「無功ACC」與此負載的方法,我怎麼能達到這個?

controlller

[HttpGet] 
    public ActionResult Grab(string AccountNumber) 
    { 

     TermDepositAccountViewModel tdParent = new TermDepositAccountViewModel(); 
     account ac = db.accounts.Single(u => u.accountNumber == AccountNumber); 
     deposittd td = db.deposittds.Single(u => u.accountNumber == AccountNumber); 
     tdParent.deposittd = td; 
     tdParent.account = ac; 
     return PartialView("TermDepositPartialView", tdParent); 
    } 

回答

3

你只需要到acc通過爲URL的一部分。由於您已在Action方法中將您的參數命名爲AccountNumber,因此它應該採用此格式。

$('#details').load('/AccountAndTransaction/Grab?AccountNumber=' + acc, function (html) 

如果你的參數名稱是id你可以把它以這種格式(如可選參數映射爲id默認路由,它應該被自動處理)

$('#details').load('/AccountAndTransaction/Grab/' + acc, function (html) 
1
 //var AccountNumber= $(this).attr('id'); // try this 

    $('#details').load('/AccountAndTransaction/Grab', { 
      AccountNumber:AccountNumber} function (html){ 
      $('#details:first').html(data); }); 
      //Or 

      var AccountNumber = $(this).attr('id'); 
      $.ajax({ 
       url: '/AccountAndTransaction/Grab', type: 'Get', dataType: 'json', 
       data: { AccountNumber: AccountNumber }, 
       success: function (data) { 
        $('#details:first').html(data); 
       } 
      }); 
    } 
+0

請,請勿再次使用'$(this).attr('id')'。 –