如何将文本框的值传递给控制器​​中的方法?

时间:2014-07-03 11:14:31

标签: javascript angularjs

在Angularjs中,我正在尝试将值从文本框传递到控制器中编写的方法,如下所示

#Try 1

<input type="text" ng-blur="isExists(this.value)">

在我的控制器中我有

 $scope.isExists = function (theValue) {
    alert(theValue);
  };

它不起作用。

#Try 2

<input type="text" ng-model="username" ng-blur="isExists()">

并在控制器内

$scope.isExists = function () {
        alert($scope.username); // returns undefined
      };

如何将值从ng-blur传递到Controller中的方法?

更新

在文本框中看不到value的任何原因?

<input type="text" ng-model="username" ng-blur="isExists()">

Fiddle

2 个答案:

答案 0 :(得分:0)

如果<input type="text"

,Try2不应该返回undefined

至少填充一个字符。

您可以在html页面上附加{{username}},仅用于调试purporses,以确保其绑定良好。

答案 1 :(得分:0)

<input type="text" name="userId" id="txtid" />

<script type="text/javascript">
    $(document).ready(function () {

        $('#txtid').blur(function () {
            debugger;
            var id = $('#txtid').val();

            window.location = "/Home/CreateSupplier/?userid=" + id;

        });
    });
</script>

在控制器中

 public ActionResult CreateSupplier(string userid)
        {
            if (userid != null)
            {
                return Content("Received Username:" + userid);
            }
            return View(thesupplierList);
        }