我对 Angular.js 还是很陌生,正在尝试弄清楚如何从提交的表单中获取数据。但是这些字段是 ng-repeat 的一部分。在我使用 ajaxSubmitButton 提交到只显示帖子值的 php 服务器端脚本时,它只显示最后一个输入字段......如果这有任何意义的话。这是表单代码:
<form class="form">
<div id="client-form" ng:controller="ClientForm">
<div class="client" ng:repeat="client in form.clients">
<div class="row">
<input type="text" name="client.name" size="80" />
</div>
</div>
<div>
<?php echo CHtml::ajaxSubmitButton(
'Submit',
CHtml::normalizeUrl(array('client/create.php')),
array(
'success'=>'function(data){
alert("success:"+data);
}',
)
); ?>
</div>
JavaScript如下:
<script src="'/js/angular.min.js'; ?>" ng:autobind></script>
<script>
function ClientForm(){
this.form = {
clients : [
{ name: 'test1', },
{ name: 'test2', },
{ name: 'test3', },
]
};
}
</script>
PHP 脚本非常简单:
<?php
print_r($_POST);
?>
ajaxSubmitButton 调用中的警报返回以下内容:
success:Array
(
[client]=>test3
)
如您所见,它仅返回最后一个输入文本字段的值。
我敢肯定我在这里做错了什么,但似乎看不到。任何指导都会很棒。
谢谢。