0

Я пытаюсь передать выбранное значение параметра, вызывающее функцию при изменении.

<div class="col-md-4"> 

    <select id="mkSelect" ng-model="formData.mk" name="mkSelect" ng-options="mk.MkIdLabel group by mk.FY for mk in mks" ng-change="update()" class="form-control"> 
    </select> 
</div> 

И в контроллере:

$scope.update = function() { 

    // this displays the MarketId value in the log 
    console.log($scope.formData.mk.MarketId); 

    $http({ 
     method: 'POST', 
     url: 'getMailStatus.php', 
     // but while trying to send to "getMailStatus.php" it says its undefined 
     data: $.param($scope.formData.mk.MarketId), 
     headers: { 
     'Content-Type': 'application/x-www-form-urlencoded' 
     } 
    }) 
    .success(function(data) { 
     console.log(data); 


     if (!data.success) { 
     // if not successful, bind errors to error variables 

     } else { 
     // if successful, bind success message to message 
     $scope.message = data.message; 
     } 
    }); 

}; 

The console.log отображает выбранный идентификатор, но когда я пытаюсь передать то же самое, используя $http он говорит неопределенными ($scope.formData.market.MarketID = undefined)

Может кто-нибудь мне точку что я делаю неправильно?

+1

Почему вы используете $ .param() вокруг данных, которые вы выкладываете? –

+0

Я пробовал просто просто {mkId: $ scope.formData.mk.MarketId} не работал, поэтому я просто попробовал, возможно, его сериализую, я смогу получить к нему доступ из getMailStatus.php – jarus

ответ

1

$ .парам нужен объект, а не простое значение. http://api.jquery.com/jquery.param/

Try с этим:

data: $.param({mkId: $scope.formData.mk.MarketId}), 
+0

Да, я просто попробовал, чтобы это сработало данные: $ .param ({'mkId': $ scope.formData.mk.MarketId}) – jarus

 Смежные вопросы

  • Нет связанных вопросов^_^