Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/sharepoint/4.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
Angularjs 在ng compile上传递变量返回未定义 var suggestionElement=document.createElement('div'); vm.suggestivate=函数(keyCode){ 如果(键代码===32){ if(vm.summaryData){ var-words=vm.words; var建议=”; var targetElement=event.srcement; var targetElementModel=targetElement.getAttribute(“ng模型”); 对于(变量i=0;i_Angularjs - Fatal编程技术网

Angularjs 在ng compile上传递变量返回未定义 var suggestionElement=document.createElement('div'); vm.suggestivate=函数(keyCode){ 如果(键代码===32){ if(vm.summaryData){ var-words=vm.words; var建议=”; var targetElement=event.srcement; var targetElementModel=targetElement.getAttribute(“ng模型”); 对于(变量i=0;i

Angularjs 在ng compile上传递变量返回未定义 var suggestionElement=document.createElement('div'); vm.suggestivate=函数(keyCode){ 如果(键代码===32){ if(vm.summaryData){ var-words=vm.words; var建议=”; var targetElement=event.srcement; var targetElementModel=targetElement.getAttribute(“ng模型”); 对于(变量i=0;i,angularjs,Angularjs,在vm.appendSuggestion方法的上述代码段中,为什么model返回为未定义?如果我在for循环期间记录它,它会返回一个值吗?我还想在vm.appendSuggestion方法中返回一个值。但是,我注意到,当它被硬编码时,它不会返回为未定义。当您单击分配了ngClick指令的div元素时,Angular尝试在$scope上查找targetElementModel,但它不存在。您不能像那样向它传递值 解决方案可能是向视图公开目标元素的列表,并执行类似于”的操作 var suggesti

vm.appendSuggestion
方法的上述代码段中,为什么
model
返回为未定义?如果我在for循环期间记录它,它会返回一个值吗?我还想在
vm.appendSuggestion
方法中返回一个值。但是,我注意到,当它被硬编码时,它不会返回为未定义。

当您单击分配了ngClick指令的
div
元素时,Angular尝试在
$scope
上查找
targetElementModel
,但它不存在。您不能像那样向它传递值

解决方案可能是向视图公开目标元素的列表,并执行类似于
”的操作
var suggestionElement = document.createElement('div');

vm.suggestActivate = function(keyCode) {
  if(keyCode === 32) {
    if(vm.summaryData) {
      var words = vm.words;
      var suggestions = "<div></div>";

      var targetElement = event.srcElement;
      var targetElementModel = targetElement.getAttribute("ng-model");

      for(var i = 0; i < 5; i++) {
        $log.debug(targetElementModel);
        suggestions += '<div ng-click="vm.appendSuggestion(targetElementModel)" style="padding: 10px; border: 1px solid #B0B0B0;" onMouseOver="this.style.backgroundColor=\'#D8D8D8\'" onMouseLeave="this.style.backgroundColor=\'#F3F3F3\'">' + words[Math.floor(Math.random() * words.length)] + '</div>';
      }

      suggestionElement.innerHTML = suggestions;
      suggestionElement.setAttribute('style', 'background: #F3F3F3; position: relative; top: -3.9em; width: 25%');
      suggestionElement.style.display = 'block';

      angular.element(targetElement.parentNode).append($compile(suggestionElement)($scope));
    }
  }
  else {
    suggestionElement.style.display = 'none';
  }
};

vm.appendSuggestion = function(model) {
  $log.debug(model);
}