我是Javascript和JQuery的新手。
目前我正在尝试在我的功能中使用.push
当一个人点击链接并向我的阵列添加1时,应该触发此操作。点击链接上的点击后,我看一下变量pointTotal
,发现数组中没有任何内容。
如果有人可以,我想知道我做错了什么。
Javascript
var pointTotal = [];
$("#pointOne").click(function() {
pointTotal.push(1);
});
HTML
<div class ="quizSectionStress container-fluid">
<div class="rowOne rowStyle">
<div class = "answers col-xs-1 col-md-1">
<div class="btn-group questionGroups">
<button type="button" class="btn btn-default btn-md dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
Answer <span class="caret"></span>
</button>
<ul class="dropdown-menu">
<li><a href="#" id="questionOneOne pointOne" name="questionOneOne" value="1"><label>1</label></a></li>
<li><a href="#" id="questionOneTwo pointTwo" name="questionOneTwo" value="2"><label>2</label></a></li>
<li><a href="#" id="questionOneThree pointThree" name="questionOneThree" value="3"><label>3</label></a></li>
<li><a href="#" id="questionOneFour pointFour" name="questionOneFour" value="4"><label>4</label></a></li>
<li><a href="#" id="questionOneFive pointFive" name="questionOneFive" value="5"><label>5</label></a></li>
<li><a href="#" id="questionOneSix pointSix" name="questionOneSix" value="6"><label>6</label></a></li>
</ul>
</div>
</div>
答案 0 :(得分:0)
尝试在DOM准备就绪时声明所有变量和事件:
<!-- html... head... jQuery inclusion... -->
<script type="text/javascript">
$(document).ready(function() {
var pointTotal = [];
$('#pointOne').click(function(e) {
e.preventDefault(); // Just in case it's an anchor/submit/whatever..
pointTotal.push(1);
alert('pointTotal count so far: ' + pointTotal.length);
});
});
</script>
<!-- blah blah... more html -->
这是因为带有pointOne
id的元素在准备好之前不会在DOM中,因此click
事件不会附加到它。
答案 1 :(得分:0)
在您的代码中尝试这样...与jquery文件链接
var pointTotal = [];
$("#pointOne").click(function(){
pointTotal.push(1);
$("#show").text(pointTotal);
//console.log(pointTotal);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.0/jquery.min.js"></script>
<button id="pointOne">Click</button>
<div id="show"></div>