我有这个代码在ng-repeat中打开一个模态。只要我对Id进行硬编码,模态就可以正常工作。但是我想打开另一个模态,如果它是用于记录2,3等等。
// Keep this around somewhere so you can access the buttons later.
List<ButtonOfSomeSort^>^ buttons = gcnew List<ButtonOfSomeSort^>();
for (int i = 0; i < numButtonsToCreate; i++)
{
ButtonOfSomeSort button = gcnew ButtonOfSomeSort();
// set some properties on the button, such as text, size & position, and click handler.
someContainerControlInYourGUI.Add(button);
buttons.Add(button);
}
不接受onclick,但我也无法使用ng-click工作。有人可以给我一些提示,我可以解决这个问题吗?
答案 0 :(得分:1)
如果您正在使用angularjs,请先使用onclick,然后使用ng-click。
第二,不要通过操纵DOM元素来隐藏纯javascript / jQuery元素,你正在使用AngularJS做AngularJS的方式,即ng-show。
出于简单的目的,我会说你有两个按钮,一个会显示一些会关闭的东西。因此,在第一个按钮(打开按钮)上,您应该使用ng-click="isShowing=true"
,在第二个按钮(关闭按钮)上将使用ng-click="isShowing=false"
然后使用ng-show="isShowing"
将div设置为可见/隐藏在您要显示的任何元素上。请记住,只要没有按下按钮isShowing属性不存在它将是未定义的 - 假的并且它不会显示,点击后它将被设置为true并显示div,然后如果你点击其他按钮关闭它应该设置为false并隐藏div。
关于应该显示模态的按钮上的特定示例:
<button ng-click="isShowing=true" class="w3-button">Meer foto's</button>
然后是模态div:
<div id="{{ x.Id }}" ng-show="isShowing" class="w3-modal">
以及最后的结束时间:
<span ng-click="isShowing=false" class="w3-button w3-display-topright w3-red">×</span>
请记住,如果你有一些不好的CSS样式,这可能会干扰显示/隐藏。我会推荐这个阅读,因为我可以看到你来自vanillaJS / jQuery背景: https://gabrieleromanato.name/introduction-to-angularjs-for-jquery-developers