我正在使用AngularJS。我在表单上选择了标签。在更改时,我调用发送http post并检索一些数据的函数。当我在所有选择框中选择值之前,它会工作,然后它返回数据。但是如果我只填充另一个字段然后更改下拉列表值,它将不会发送http post。我真的不明白可能会出现什么问题。
以下是我表单的一部分:
.
.
.
<div class="form-group" >
<label>NUM<span class="error">*</span></label><span data-ng-show="user.userForm1.NUM.$touched && user.userForm1.NUM.$invalid " class="error">Required</span>
<input type="text" class="form-control" name="NUM" data-ng-model="user.NUM" required data-ng-pattern="/^[0-9]{13,13}$/" data-ng-value="NUM"/>
</div>
<div class="form-group" >
<label class="control-label">City<span class="error">*</span></label><span data-ng-show="user.userForm1.selectedCity.$touched && user.userForm1.selectedCity.$invalid" class="error">Required</span>
<select ng-change="sendSelection()" data-ng-model="user.selectedCity" class="form-control" name="selectedCity" required data-ng-value="user.selectedCity" >
<option value="">Chose city</option>
<option >City1</option>
<option >City2</option>
<option >City3</option>
<option >City4</option>
</select>
</div>
.
.
.
这是我在控制器中的功能:
$scope.sendSelection = function() {
$http({
method: 'POST',
url: 'add.php',
withCredentials: true,
data: "selection="+$scope.user.selectedCity,
datatype: "json",
headers: {'Content-Type': 'application/x-www-form-urlencoded'}
})
.success(function(data) {
alert(data);
})
.error(function(err) {
alert(data);
});
}
这一切都适用于localhost但是当我把它放在真正的服务器上时,它有上面提到的问题。