2016-05-05 15 views
2

У меня есть UI-grid, в котором используется шаблон ячейки Я использовал флажки. Когда я нажимаю на конкретный флажок, я хочу получить это значение флажка, значит У меня есть таблица как структура, и в ячейке таблицы у меня есть checkbox. И теперь я хочу получить выбранное значение флажка.Как получить выбранные значения флажка в ячейке ui-grid с помощью angularjs

Вот мой код

$scope.gridOptionsNew = { 
appScopeProvider : $scope, 
columnDefs : [{ 
     enableCellEdit : false, 
     field : 'SponsorType', 
     displayName : me.labelText.ADD_STORY_TABLE_SPONSOR_TYPE 

    }, { 
     //enableCellEdit: true, 
     field : 'Hoarding', 
     displayName : me.labelText.ADD_STORY_TABLE_HOARDING, 
     cellTemplate : '<div class="text-center"><input type="checkbox" ' + 
     'name="radio" value="radio" ng-click="grid.appScope.yourMethod(row.entity.Radio)"/></div>' 
    }, 
    { 
     //enableCellEdit: true, 
     field : 'Print', 
     displayName : me.labelText.ADD_STORY_TABLE_PRINT, 
     cellTemplate : '<div class="text-center"><input type="checkbox" ' + 
     'name="radio" value="radio" ng-click="grid.appScope.yourMethod(row.entity.Radio)"/></div>' 
    }, { 
     //enableCellEdit: true, 
     field : 'Radio', 
     displayName : me.labelText.ADD_STORY_TABLE_RADIO, 
     cellTemplate : '<div class="text-center"><input type="checkbox" ' + 
     'name="radio" value="radio" ng-click="grid.appScope.yourMethod(row.entity.Radio)"/></div>' 
    }, { 
     //enableCellEdit: true, 
     field : 'StageBackDrops', 
     displayName : me.labelText.ADD_STORY_TABLE_STAGE_BACK_DROP, 
     cellTemplate : '<div class="text-center"><input type="checkbox" ' + 
     'name="radio" value="radio" ng-click="grid.appScope.yourMethod(row.entity.Radio)"/></div>' 
    }, { 
     //enableCellEdit: true, 
     field : 'Stalls', 
     displayName : me.labelText.ADD_STORY_TABLE_STALLS, 
     cellTemplate : '<div class="text-center"><input type="checkbox" ' + 
     'name="radio" value="radio" ng-click="grid.appScope.yourMethod(row.entity.Radio)"/></div>' 
    }, { 
     //enableCellEdit: true, 
     field : 'Banners', 
     displayName : me.labelText.ADD_STORY_TABLE_BANNERS, 
     cellTemplate : '<div class="text-center"><input type="checkbox" ' + 
     'name="radio" value="radio" ng-click="grid.appScope.yourMethod(row.entity.Radio)"/></div>' 
    }, { 
     //enableCellEdit: true, 
     field : 'Seats', 
     displayName : me.labelText.ADD_STORY_SEATS, 
     cellTemplate : '<div class="text-center"><input type="checkbox" ' + 
     'name="radio" value="radio" ng-click="grid.appScope.yourMethod(row.entity.Radio)"/></div>' 
    }, { 
     //enableCellEdit: true, 
     field : 'VenueBanners', 
     displayName : me.labelText.ADD_STORY_VENUE_BRANDING, 
     cellTemplate : '<div class="text-center"><input type="checkbox" ' + 
     'name="radio" value="radio" ng-click="grid.appScope.yourMethod(row.entity.Radio)"/></div>' 
    }, { 
     //enableCellEdit: true, 
     field : 'StagePresence', 
     displayName : me.labelText.ADD_STORY_STAGE_PRESENCE, 
     cellTemplate : '<div class="text-center"><input type="checkbox" ' + 
     'name="radio" value="radio" ng-click="grid.appScope.yourMethod(row.entity.Radio)"/></div>' 
    } 
]} 

$scope.yourMethod = function (radio) { 
    console.log("value", radio); 
}; 

ответ

0

Пожалуйста, попробуйте, как показано ниже.

опции набор сетки, как:

$scope.gridOptionsNew = { 
     appScopeProvider: $scope, 
     //your other options 

затем шаблон:

cellTemplate: '<div class="text-center"><input type="checkbox" '+ 
name="radio" value="radio" ng-click="grid.appScope.yourMethod(row.entity.Radio)"/></div>' 

Метод:

 //your Method 
     $scope.yourMethod = function (radio) { 

     //your logic 
     }; 

Обновление:

cellTemplate: '<div class="text-center"><input type="checkbox" '+ 
name="radio" value="radio" ng-click="grid.appScope.yourMethod(row.entity)"/></div>' 
+0

привет большое спасибо за ваш ответ. я просто сделал утешать значение радио в функции, но показывает undefined.i сделал это \t \t \t \t \t \t $ scope.yourMethod = функция (радио) { \t \t \t \t \t console.log ("Hello", радио); \t \t \t \t}; он показывает "" infront of hello –

+0

можете ли вы поместить свои последние фрагменты кода в свой пост выше? – Sampath

+0

См. Раздел «Обновление». Попробуйте это и посмотрите значение с помощью debug..Just отладки с помощью 'F10'. – Sampath