求大神指教
jquery吧
全部回复
仅看楼主
level 1
先描述一下问题,页面结构如下很简单,与button平级的div是在预计方法无效的情况下的补救,请忽略
本来是想要在单击button后拼接字符串,字符串对象名为table,然后直接像65行注释那样$(table)转为js对象,实际操作点击按钮后没有反应
改成66之后点击button可以显示table,为了验证是不是addclass或者insertafter用错了,我将65改成了$(table);,点击后依旧没有table,为了验证是不是$(table);没有拿到对象,我添加了64
但是根据64行与输出,$(table)似乎也拿到了。
最后是控制台最下面的提示,不知道有没有关联,以防万一放这,知道吞题目,就来贴吧问了
2022年04月28日 05点04分 1
level 1
补一个代码,看人家都不是发截图的
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>bootstrap</title>
<!--导入bootstrap的主样式-->
<link rel="stylesheet" href="component/bootstrap-3.4.1-dist/css/bootstrap.min.css" type="text/css">
<style type="text/css">
.martop20{
margin-top: 20px;
}
</style>
</head>
<body>
<div class="container">
<button>1</button>
<h1>jquery ajax</h1>
<div class="row">
<div class="col-md-6">
<button type="button" class="btn btn-primary">get请求数据</button>
<div id="mtab"></div>
</div>
</div>
</div>
<script type="text/javascript" src="component/jquery/jquery-3.6.0.min.js"></script>
<script type="text/javascript" src="component/bootstrap-3.4.1-dist/js/bootstrap.min.js"></script>
<script>
$(function () {
//1.先获取button,并且添加单击事件
$(".btn.btn-primary").on("click",function () {
alert("1");//有没有进入方法
//2.通过AJAX发送get请求到data/sample.json
$.get("data/sample.json" ,function (data) {
//成功后会把获得的数据存放到data参数中
console.log(data);
//把这个数据的内容用来填充你指定的元素
var table = "<table class='martop20 table table-striped table-hover'>\n" +
" <tr>\n" +
" <th>ID</th>\n" +
" <th>姓名</th>\n" +
" <th>学号</th>\n" +
" <th>性别</th>\n" +
" <th>爱好</th>\n" +
" </tr>\n" ;
//拼接行记录
console.log(data.length);
for (var i = 0; i < data.length; i++) {
table += "<tr><td>"+data[i].id+"</td>\n"+
"<td>"+data[i].name+"</td>\n"+
"<td>"+data[i].stuNo+"</td>\n"+
"<td>"+data[i].gender+"</td>\n"+
"<td>"+data[i].hobbies.join("|")+"</td>\n"+
"</tr>";
}
//最后再接上</table>
table += "</table>";
//
console.log(table);
//
console.log($(table));
// $(table).addClass("table table-striped table-hover").addClass("martop20").insertAfter($(".btn .btn-primary"));
$("#mtab").html(table)
});
});
});
</script>
</body>
</html>
2022年04月28日 06点04分 2
level 1
$(table).insertAfter($(".btn-primary"));
2022年05月02日 01点05分 4
1