2013-12-20 90 views
0

我有一個問題當點擊鏈接(標籤)。它包含數據綁定,通過使用attr綁定我給的網址,並在同一時間使用點擊綁定 我的問題是點擊綁定工作,但不重定向的網址通過attr約束。 我試試這個代碼..在淘汰賽數據綁定attr綁定不工作?

viewModel.printbill = function() { 
    var dta = ko.utils.arrayFilter(viewModel.Bills(), function (item) { 
     return item.BillID == viewModel.BillID(); 
    }); 
    if (dta != null) { 
     var data = { 
      List: dta 
     } 
     localStorage.setItem('SelectedBill', JSON.stringify(data)); 
    } 
}; 

<a target="_blank" title="" data-bind='attr: {href:"@Href("~/billing/BillPrint") "},click:printbill'> 點擊這個鏈接 當我有一個點擊綁定:printBill,這是用來選擇按鈕CLIK特定的標識和映射到localStorage的......所有的東西會不錯..但是..我不能重定向屏幕到另一個選項卡。

+0

是什麼printBill做的?如果它返回false,那麼這將阻止瀏覽器跟蹤鏈接,我想。 –

回答

3

如果你在鏈接上同時綁定了一個click綁定和一個href,那麼你需要從href的綁定中返回true來被認爲是可以被忽略的 - 把它想象成能夠取消點擊(從而導航)。

viewModel.printbill = function() { 
    var dta = ko.utils.arrayFilter(viewModel.Bills(), function (item) { 
     return item.BillID == viewModel.BillID(); 
    }); 
    if (dta != null) { 
     var data = { 
      List: dta 
     } 
     localStorage.setItem('SelectedBill', JSON.stringify(data)); 
    } 
    return true; // <---- here 
}; 
+0

謝謝你..我的工作 – Sankar

+0

它的未來就像彈出...我想在當前瀏覽器的新標籤中打開該網址...我能爲此做些什麼? – Sankar

+0

你的鏈接中有'target =「_ blank」'。這就是爲什麼它打開一個新窗口 – Jamiec

0

而不是使用鏈接使用按鈕來重定向和點擊