是否可以将js
页面上可用的有角度cshtml
数据传递给按钮点击事件?
角度js
对象被引用为item.property. {{item.property}}
在html标记之间很好用。
功能是:
function ShowFileDialog(ProjectID)
{
alert(ProjectID);
}
我想做的cshtml
是这样的,但显然是非常错误的。
<button id="button-view" onclick="ShowFileDialog({{item.projectId}})"></button>
我已经有了解决方法 - 所以不需要其他人。
答案 0 :(得分:1)
在你的控制器中,
$scope.project= {"Id": 1, "name":"project1"};
$scope.ShowFileDialog = function(ProjectID)
{
alert(ProjectID);
}
然后在你的HTML中,
<button id="button-view" ng-click="ShowFileDialog(project.Id)">show dialog</button>
如果你有这样的项目清单,
$scope.projects= [{"Id": 1, "name":"project1"},{"Id": 2, "name":"project2"}];
然后在你的html中使用ng-repeat as,
<ul>
<li ng-repeat="proj in projects>
{{proj.name}} <button ng-click="ShowFileDialog(proj.Id)">show dialog</button>
</li>
</ul>
答案 1 :(得分:0)
从我的POV中不应该做这些类型的混音。最接近的正确方法应该是:
使用以角度为单位的值设置视图:
<input type="text" ng-model="myVariable" id="myVar" />
如果您想获得或使用此值,请从视图获取,例如:
<script type="text/javascript">
var param1 = document.getElementById("myVal").value;
samplefunction( param1 );
</script>
<强> Online Demo 强>
注意:强> 在此示例中,我使用了
input
,但您可以使用data-
myVar
属性并从中获取值。