我正在使用Angularjs。我的问题是,当我在下拉菜单中选择一个新选项时,将出现一个对话框。如果对话框的结果为false,则所选的下拉选项必须相同。将分析其他开发者的想法。先感谢您!
请参阅下面的代码片段:
<div ng-app="myApp" ng-controller="myCtrl">
<select ng-model="myDropDown" ng-change="Dialog()">
<option>a</option>
<option>b</option>
</select>
</div>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.4/angular.min.js"></script>
<script>
var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope) {
$scope.Dialog = function () {
var dialog = confirm('Continue?');
if(!dialog) {
alert("Option must not change");
/** The problem is the dropdown still select the option. **/
}
}
});
</script>
这是您可能不知道的窍门:
ng-change="dialog(myDropDown)" // pass the NEW value of myDropDown
ng-change="dialog('{{myDropDown}}')" // pass the OLD value of myDropDown
调用时dialog()
,可以将先前选择的选项作为参数传递。
然后,如果取消对话框,只需回滚即可。
var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope) {
$scope.dialog = function(prev) {
var dialog = confirm('Continue?');
if(!dialog) {
$scope.myDropDown = prev;
alert("Option must not change");
}
}
});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.4/angular.min.js"></script>
<div ng-app="myApp" ng-controller="myCtrl">
<select ng-model="myDropDown" ng-change="dialog('{{myDropDown}}')">
<option>a</option>
<option>b</option>
</select>
</div>
问题内容: 我正在尝试使用自定义angularjs指令在上设置确认对话框: 这很好用,但不幸的是,未评估使用我的指令的标记内的表达式: (这种情况下不评估名称)。这似乎是由于我的指令的终端参数。您有解决方法的想法吗? 要测试我的代码,请执行以下操作:http : //plnkr.co/edit/EHmRpfwsgSfEFVMgRLgj?p=preview 问题答案: 如果您不介意不使用,则可以正常
问题内容: 我有以下形式的数据 我想要两个下拉菜单。第一个下拉列表将显示“名称”。当用户从第一个下拉列表中选择名称时,应在第二个下拉列表中填充相应的“版本”。 无效的jsfiddle链接:http://jsfiddle.net/fynVy/174/ 问题答案: 您需要调整HTML模板,以便第一个下拉列表显示服务器名称,并且第二个下拉列表的选项基于所选下拉列表(第一个下拉列表的ngModel)中的版
问题内容: 我希望此链接具有一个JavaScript对话框,询问用户“ 您确定吗? 是/否 ”。 如果用户单击“是”,则链接应该加载,如果“否”,则什么也不会发生。 我知道如何通过运行返回或的函数以表格形式进行操作。但是,我该如何使用链接呢? 问题答案: 内联事件处理程序 以最简单的方式,您可以在内联处理程序中使用该函数。 高级事件处理 但是通常情况下,您希望将HTML和Javascript分开,
问题内容: 对于带有警报的简单表单,询问是否正确填写了字段,我需要执行以下操作的函数: 单击带有两个选项的按钮时显示警报框: 如果单击“确定”,则提交表单 如果单击“取消”,则警告框关闭,可以调整并重新提交表单 我认为JavaScript确认会起作用,但我似乎无法弄清楚该怎么做。 我现在拥有的代码是: 问题答案: 一个简单的 内联JavaScript确认 就足够了: 除非您正在执行 验证 ,否则不
问题内容: 如何在AngularJs中取消路线更改事件? 我当前的代码是 即使验证失败,Angular也会提取下一个模板和关联的数据,然后立即切换回上一个视图/路线。如果验证失败,我不希望angular提取下一个模板和数据,理想情况下应该没有window.history.back()。我什至尝试过event.preventDefault()但没有用。 问题答案: 代替使用 这是angularjs专
本文向大家介绍Android中创建对话框(确定取消对话框、单选对话框、多选对话框)实例代码,包括了Android中创建对话框(确定取消对话框、单选对话框、多选对话框)实例代码的使用技巧和注意事项,需要的朋友参考一下 Android中可以创建三种对话框、确定取消对话框、单选对话框、多选对话框 android中的确定取消对话框演示示例 Android中使用单选对话框的演示案例 android中使用多选