我试图简单地在一个循环上输出一行值到div中。为了做到这一点,我有一个循环:
for(var i = 0; i = M1.length-1; i++) {
a = b + c; //for example
$("#matrix").html(a + " ");
}
//in the body
<body>
<div id="matrix"></div>
</body>
问题是它没有写任何东西,只是一个空白的白页......没有内容,没有价值。我试图声明var x=1
,if(x==1){console.log("dsa");$(#matrix).html("hello");
}
条件被触发但你好没有写在那里。有什么想法吗?
正如我告诉过你的那样,我的代码中没有戏剧性,我已经完全评论了其中的所有内容。 if语句触发,这就是为什么我把它放在这里,所以编译器肯定必须读取Jq行。
答案 0 :(得分:2)
您在选择器周围缺少引号,现在您的for语句出现问题,条件i=M1.length-1
永远不会出现,接下来您会遇到问题,因为.html
将取代整个内容,您需要.append
,如下所示:
var b=1;
var c=2;
for(var i = 0; i<10;i++){
a = b + c; //for example
$('#matrix').append(a + " ");
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="matrix"></div>
答案 1 :(得分:2)
将jQuery选择器放在引号内,可以是i<=M1.length-1
。
for(var i = 0; i <= M1.length-1; i++) {
a = b + c; //for example
$("#matrix").append(a + " ");
}
//in the body
<body>
<div id="matrix"></div>
</body>
答案 2 :(得分:2)
您正尝试在<head>
中执行此操作,但看起来您没有在<head>
中初始化元素。因此,在document
处于ready
状态后,您需要放置这些函数。你需要使用:
$(document).ready(function () {
// Do whatever here.
});
所以在你的代码中,执行以下操作:
$(document).ready(function () {
for(var i = 0; i = M1.length-1; i++) {
a = b + c; //for example
$("#matrix").html(a + " ");
}
});
在document
的{{1}}事件中包装所有内容将使您的jQuery代码可以访问DOM中的所有元素。