我正在将Laravel与Angular JS一起用于表单。我得到了如下形式的文本框
<input type="text" name="removedSiblings" ng-model="form.removedSiblings"
id="div_removedSiblings" class="form-control">
使用Java脚本,我正在分配一个值(单击按钮)
var elem = document.getElementById('div_removedSiblings');
elem.value = 'malai';
在Controller PHP中获得下面的代码
$removedSiblings = \Input::get('removedSiblings');
logger($removedSiblings);
每当使用javascript获取值时,我总是为$ removedSiblings变量获取空值。
但是,当我在文本框中手动键入一个值时,该值将打印在控制器内部。
这里怎么了?
AngularJS框架不监视value
元素的<input>
属性。它仅在用户输入或从框架内部进行更新后才更新模型。
对按钮使用ng-click
指令:
<button ng-click="form.removedSiblings = 'malai'">
Click me
</button>
有关更多信息,请参阅
这是由于ng-model的使用采用了两种方式的绑定。尝试在controller范围变量form.removedSiblings上设置值。
希望这会有所帮助。