使用此功能:
function modifyJS(elemento){
if (document.getElementById(elemento).innerHTML.indexOf('✔')>0){
document.getElementById(elemento).innerHTML=document.getElementById(elemento).innerHTML.substring(0,document.getElementById(elemento).innerHTML.length-29);
}else{
document.getElementById(elemento).innerHTML=document.getElementById(elemento).innerHTML+'<b color="green">✔</b>';
}
}
我想修改继承的HTML内容。当我调用该函数时,错误如下
TypeError: Cannot read property 'innerHTML' of nullangular.1.4.6.min.js:107
我打破了它,但是&#34; elemento&#34;传递给标识HTML元素的变量被正确地赋予函数。
答案 0 :(得分:1)
有这个表:
<table class="table table-bordered">
<tr ng-repeat="x in menus" ng-class-even="'alt'">
<td style="background: white;" id="x.id" ng-click="addMenu(x.href,x.id)">{{cleanMenuAction(x.href)}}</td>
</tr>
</table>
修改点击的&#34; td&#34;标签,最后我修改了这个函数:
//Funzione per aggiungere una voce di menu da abilitare per l'utente in creazione
$scope.addMenu= function(vocemenu,idmenu){
if (vocemenu.indexOf(' SELEZIONATA')>0){
vocemenu=vocemenu.substring(0,vocemenu.length-(' SELEZIONATA').length);
$scope.cleanMenuAction(vocemenu);
$scope.menus[idmenu-1].href=vocemenu;
}else{
$scope.cleanMenuAction(vocemenu);
vocemenu=vocemenu+' SELEZIONATA';
$scope.menus[idmenu-1].href=vocemenu;
}
}
第二个,它用于删除我不需要的部分字符串
//Funzione per rendere più leggibile la voce di menu da mostrare
$scope.cleanMenuAction= function(stringa){
//Verifica se presente una &
if (stringa.indexOf("&")>0){
return (stringa.substring((stringa.indexOf('=')+1),stringa.indexOf('&')));
}
else{
return (stringa.substring((stringa.indexOf('=')+1),stringa.length));
}
}