我正在 Angularjs 中的一个tutoriel做一个练习。我想检查范围等于5的变量 nbElement 是否将 curentpage 更改为1000.但是curentpage永远不会更改。
controller.js:
if ($scope.nbElement==5)
我尝试了if ((parseInt($scope.nbElement,10)==parseInt("5",10))
和 <!DOCTYPE html>
<html>
<head>
<link type="text/css" href="main.css" rel="stylesheet">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.4/jquery.min.js"></script>
<script src="jquery.js"></script>
</head>
<body>
<section>
<h1 id="header">~Wonderful Weather Widget~</h1>
<div id="days">
<div id="content">
<div id="place"></div>
<div id="day"></div>
<div id="conditions"></div>
<div id="conditionsDesc"></div>
<div id="currentTemp"></div>
</div>
</div>
<script src="script.js"></script>
</section>
<article>
<div id='openweathermap-widget'></div>
<script type='text/javascript'>
window.myWidgetParam = {
id: 15,
cityid: 5780993,
appid: 'bb80d6b0bf0dbcf02f65eff720397c3b',
containerid: 'openweathermap-widget',
};
(function() {
var script = document.createElement('script');
script.type = 'text/javascript';
script.async = true;
script.src = 'http://openweathermap.org/themes/openweathermap/assets/vendor/owm/js/weather-widget-generator.js';
var s = document.getElementsByTagName('script')[0];
s.parentNode.insertBefore(script, s);
})();
</script>
<div id="clouds" class="box">Cloudy</div>
</article>
</body>
</html>
,但也没有尝试。
答案 0 :(得分:0)
您已在条件中提供了额外的(
。
if ((parseInt($scope.nbElement)==parseInt("5"))
^
here
删除它。
的 DEMO
强>
此外,您不需要此类int
检查
if ((parseInt($scope.nbElement)==parseInt("5"))
作为nbElement
int的值,您不需要。{
就这么说吧
if ($scope.nbElement == 5)
但是,如果nbElement
的值更改为字符串,如果将int放在条件的右侧,它将在检查期间执行转换。但是,如果您想进行严格检查,请使用===
代替==
并在变量前添加+
,然后将值转换为数字
喜欢这个
if (+$scope.nbElement === 5) {