2013-10-28 23 views
0

大家好我想在mvc 3剃鬚刀中使用konckout.js創建一個網格,我在網格第一列中有3列應該是按鈕,其餘部分列應該從控制器獲取數據。事情是,我能夠實現所有這一切,但我不能設置類或id屬性到網格中的按鈕。我希望類是「選擇」作爲id的按鈕應該是後續列中的值,以便我可以使用jquery執行一些客戶端腳本。我CSHTML頁面使用mvc 3 razor中的konckout.js創建一個帶按鈕的網格cshtml

<table> 
<thead> 
    <tr> 
     <th>Buttons</th> 
     <th data-bind="text: column1"></th> 
     <th data-bind="text: column2"></th> 
    </tr> 
</thead> 
<tbody data-bind="foreach: Office"> 
    <tr> 
    <td><input type="button" value="Select"/></td> 
    <td data-bind="text: name"></td> 
    <td data-bind="text: location"></td> 
    </tr> 
</tbody> 

我的視圖模型是這樣的

var OfficeGrp = function(){ 
var self =this; 
self.name = ko.observable(); 
self.location = ko.observable(); 
} 
var OfficeVM = function() { 
    var self = this; 
    self.Office = ko.observableArray([new OfficeGrp()]); 
    self.column1= ko.observable("Name"); 
    self.column2= ko.observable("Location"); 
    self.RadioBtnActive = function() { 
     var self = this; 
     self.Office.removeAll(); 
     $.getJSON(urlContent + "Office/GetOfficeGrid", { param: "true" }, function (data) { 
      self.Office(data); 
     }); 
    }; 
    self.RadioBtnAll = function() { 
     var self = this; 
     self.Office.removeAll(); 
     $.getJSON(urlContent + "Office/GetOfficeGrid", { param: "true" }, function (data) { 
      self.Office(data); 
     }); 
    }; 

}; 

$(document).ready(function() { 
    var officeVM = new OfficeVM(); 
    ko.applyBindings(officeVM); 
    officeVM.RadioBtnActive(); 
    $("input:button[class='select']").click(function() { 
     alert('HELLO'); 
    }); 

}); 

即使我顯式地指定類鍵元素就像我給這是否

<input type="button" value="Select" class="select"/> 

Jquery的單擊事件點擊按鈕不會擊中

$("input:button[class='select']").click(function() { 
     alert('HELLO'); 
    }); 

我已經使用這個從knockout.js

<input type="button" value="Select" class="select" data-bind="attr: { id: name}"/> 

而且還單選按鈕我忘了一開始

<input id="RadiobtnActive" type="radio" name="radioBtn" checked="checked" class="rdbtn" data-bind="click: RadioBtnActive"/>Active 
    <input id="RadiobtnAll" type="radio" name="radioBtn" class="rdbtn" data-bind="click: RadioBtnAll"/> All 

,但我首先要jQuery的按鈕單擊事件的工作是試圖增加不工作(我不知道爲什麼),我想將id的值發送給控制器。在這種情況下的幫助將得到高度讚賞..........

+0

的可能重複[創建使用konckout帶有按鈕的網格。 js in mvc 3 razor](http://stackoverflow.com/questions/19635360/create-a-grid-with-buttons-using-konckout-js-in-mvc-3-razor) – nemesv

+0

我覺得你的ko.applybindings重寫您的jQuery綁定 – Armand

+0

如果這是我也嘗試使用委託和方法的情況下,在這兩種情況下,它不工作..... – nifabregas

回答

相關問題