我试图在此页面中获取我的路径变量,以在用户输入时更改空格和标点符号。这是相应的代码:
<!doctype html>
<html lang="en-US" ng-app>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width">
<title>ng-change</title>
<link rel="stylesheet" type="text/css" href="mystyle.css" media="all"/>
<script type="text/javascript" src="angular_1.0.7.js"></script>
</head>
<body>
<div class="browser" ng-controller="Browser">
<!--Mock browser URL-->
<div class="url">
← → ∞
<input type="text" value="edit/{{ path }}"/>
</div>
<!--Input field for the page, mock page-->
<div class="page">
<label for="update">
Update the URL:
<input ng-change="clean()" ng-model="path"/>
</label>
</div>
</div>
<script type="text/javascript" src="script.js"></script>
</body>
</html>
但是,当我输入任何内容时,什么也没有发生。这是 script.js 文件:
var Browser = function ($scope) {
$scope.clean = function () {
$scope.path = $scope.path
.replace("/\s+/g", "-")
.replace("/[^a-z0-9-]/i", "");
console.log($scope.path);
};
};
我很确定我的 javaScript 是正确的,但我不知道为什么我的应用程序无法正常工作,我尝试调试它,问题似乎ng-change
是只考虑在放置除空格以外的字符时它会发生变化在中,只要输入空格,它就会忽略它们。