Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/396.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 从下拉列表中更改选项时取消事件_Javascript_Angularjs - Fatal编程技术网

Javascript 从下拉列表中更改选项时取消事件

Javascript 从下拉列表中更改选项时取消事件,javascript,angularjs,Javascript,Angularjs,我有下面的代码,我正在从下拉列表中确认选择的更改。如果用户从列表中选择任何选项,然后单击“取消”,我想将该选项更改为确认警报的“取消事件时默认选择任何选项”。当前选择的内容被选为默认值 $scope.GetValue = function(newObj, oldObj) { var dialog = confirm('Continue?'); if (dialog) { alert("Changing from "+oldObj+"to "+newObj); } else { $scope.

我有下面的代码,我正在从下拉列表中确认选择的更改。如果用户从列表中选择任何选项,然后单击“取消”,我想将该选项更改为确认警报的“取消事件时默认选择任何选项”。当前选择的内容被选为默认值

$scope.GetValue = function(newObj, oldObj) {
var dialog = confirm('Continue?');
if (dialog) {
  alert("Changing from "+oldObj+"to "+newObj);
}
else {
$scope.valueProps = '';
}
}


有关如何将选项更改为默认值的任何帮助。如果触发取消事件,请选择任意一个。

在父循环中使用同一对象时,不应使用对象键作为选择选项值

首先,使用另一个作用域而不是循环对象作为选项

$scope.optionList = [
  "For any event on all my projects",
  "For any event on the selected projects only...",
  "Only for things I watch or I'm involved in",
  "Only for things I am assigned to",
  "Only for things I am the owner of",
  "No events"
];
并且您可能不希望使用循环项选择的范围。 $scope.valueProps=; 您可以在循环项中将旧值存储为类似于键的旧值

{
    "key": "all",
    "value": "",
    "oldValue": ""
  },
并将事件传递循环项更改为函数的参数

function GetValue(row) {
  if (confirm('Continue?')) {
    alert('Changing from ' + row.oldValue + 'to ' + row.value);
    // You should change your old value with new value after alert notify
    row.oldValue = row.value;
  } else {
    // if confirm rejects then change value with old value
    row.value = row.oldValue;
  }
}
我对你的代码做了一些修改,请检查一下


@基维诺啊,是的。我在answser中添加了代码。谢谢你提醒我