قالب الخلية في ng-grid
-
26-12-2019 - |
سؤال
انا استخدم cell template
ممتلكات ng-grid
.أقوم بتحديد وظيفة واحدة في التوجيه.ضمن نفس التوجيه أقوم بتعريف بلدي grid-options
.هنا هو الرمز:
data: 'mydata',
columnDefs: [
{field:'Timeout', displayName:'Delay', cellTemplate: '<a href=""
ng-click= "Report(Alert,Key,1000,1,1);"><div class=\"ngCellText\">{{row.getProperty(col.field)}}</div></a>'}
]
والوظيفة Report
يتم تعريفه أيضًا ضمن نفس التوجيه.
ng-click
يعمل كلما تم النقر عليه.يتم استدعاء الوظيفة ولكن مهما كان متغير الإدخال الذي أقوم بتمريره (Alert
و Key
) لا يمرر إلى الوظيفة بينما المعلمات الثلاثة المتبقية 1000,1,1
يتم تمريرها.Alert
هي السلسلة المشفرة التي أريد تمريرها.Key
هي إحدى مصفوفة القيم الصحيحة في "mydata".لقد راجعت باستخدام alert
لهاتين القيمتين المحددتين في الوظيفة وتظهر غير محددة.
الرجاء المساعدة في استدعاء الدالة بشكل صحيح.شكرا لك مقدما.
المحلول
هل تريد شيئا من هذا القبيل:
$scope.Report=function(msg,key,v1,v2,v3){
//use v1, v2, v3 for whatever you like
alert(msg+':'+key);
};
$scope.gridOptions = {
data: 'myData',
columnDefs: [
{
field: 'name',
displayName: 'Delay',
cellTemplate: '<a href="" ng-click= "Report(\'Alert\',row.entity.age,1000,1,1);"><div class=\"ngCellText\">{{row.getProperty(col.field)}}</div></a>'
}, {
field: 'age'
}
]
};
لاحظ أنه يجب وضع السلسلة المضمنة (msg) بين علامات الاقتباس المحذوفة.لقد استخدمت العمر كمثال للمفتاح.نظرًا لأنها قيمة رقمية في هذا المثال، فلن تحتاج إلى علامات الاقتباس.
هنا أ الغطاس