我正在尝试使用文件管理器在表单域中插入图像链接,但数据不提交到控制器的范围。
当我设置一个默认值时,这个值是不变的。
这是表格:
<!--show while loading-->
<div ng-if="showItem && !itemLoaded">
<i class="fa fa-spinner fa-spin fa-3x"></i>
</div>
<!--show when error loading-->
<div ng-if="showItem && listError">
{{ 'ERROR_LOADING' | translate }}
</div>
<!--show when loaded-->
<div ng-if="showItem && itemLoaded && !listError">
<div class="menu-item-background">
<input type="hidden" name="cat_id" value="{{item.cat_id}}" ng-model="item.cat_id">
<div class="form-group">
<label for="cat_parent_id">{{'MENUPARENT' | translate }}</label>
<select name="cat_parent_id" id="cat_parent_id" ng-model="item.cat_parent_id">
<option value="">--{{ 'DOSELECT' | translate }}</option>
<option ng-repeat="option in parentOptions.options" value="{{option.cat_id}}">{{option.cat_name}}</option>
</select>
</div>
<div class="form-group">
<label for="cat_lang_id">{{'MENULANG' | translate }}</label>
<select name="cat_lang_id" id="cat_lang_id" ng-model="item.cat_lang_id">
<option value="">--{{ 'DOSELECT' | translate }}</option>
<option ng-repeat="option in langOptions.options" value="{{option.lang_id}}">{{option.lang_name}}</option>
</select>
</div>
<div class="form-group">
<label for="cat_name">{{'CATNAME' | translate }}</label>
<input type="text" id="cat_name" name="cat_name" placeholder=" {{'CATNAME' | translate }}" ng-model="item.cat_name">
</div>
<div class="form-group">
<label for="cat_image">{{'CATIMAGE' | translate }}</label>
<input type="text" id="cat_image" name="cat_image" placeholder=" {{'CATIMAGE' | translate }}" ng-model="item.cat_image" ng-click="openWindow()"> <i class="fa fa-info-circle" title="Klik in het tekstvak hiernaast om de file manager te openen. Blader naar het goede bestand en dubbelklik om deze te selecteren en in het tekstveld te plaatsen."></i>
</div>
<div class="form-group">
<label for="cat_order">{{'MENUORDER' | translate }}</label>
<input type="text" id="cat_order" name="cat_order" placeholder=" {{'MENUORDERNR' | translate }}" ng-model="item.cat_order">
</div>
<div class="form-group">
<label for="cat_active">{{'MENUACTIVE' | translate }}</label>
<input type="checkbox" id="cat_active" name="cat_active" value="1" ng-model="item.cat_active" ng-true-value="'1'" ng-false-value="'0'">
</div>
<div>
<button type="button" class="btn btn-default" ng-click="cancel()">{{'BUTTON_CANCEL' | translate }}</button>
<button type="button" class="btn btn-default" ng-click="safeCategory(item.cat_id, item.cat_parent_id, item.cat_lang_id, item.cat_name, item.cat_image, item.cat_order, item.cat_active)">{{'BUTTON_SAFE' | translate }}</button>
</div>
</div>
</div>
我用 angular 打开弹出窗口,它会触发一个常规的 javascript window.open 函数,弹出窗口工作正常,链接放在表单域中,但它永远不会到达范围。
问题似乎在于以编程方式输入数据时范围没有更新。此外,当未手动输入数据时,ng-change 不会触发。我希望有一个解决方法。
有任何想法吗?