我如何使这只显示一个结果,并添加一个随机按钮
How would I make this only display one result and add a randomize button?
所以我有这段代码,显示所有的对象,适合一个JSON文件中的变量使用Jput。
<script>
$(document).ready(function(){
$("#tbody").jPut({
ajax_url:"valid_data.json",
prepend:true,
name:"tbody_template",
});
});
</script>
<table jput="t_template">
<tbody jput="tbody_template">
<tr>
<td>{{First Name}}</td>
<td>{{Middle Name}}</td>
<td>{{Last Name}}</td>
<td>{{Nationality}}</td>
<td>{{Birthplace}}</td>
<td>{{Age}}</td>
</tr>
</tbody>
</table>
<table>
<tbody id="tbody">
</tbody>
</table>
<script src="jquery-1.12.3.min.js"></script>
<script src="jput.min.js"></script>
代码工作得很好,(可以在http://fooda.website/test2.html的行动中看到),但我需要一个按钮,当点击选择一个随机数组,只显示数组的结果。
Javascript知识是最小的,所以不知道如何去做。在我被建议转换为JSON之前,有一些以前的代码链接到CSV文件,但我失去了如何实现它。
不确定.jPut()
的选项,但有一种选择是将tr
的所有元素style
设置为display:none
,然后从table
中随机选择tr
,并将tr
设置为display:block
。
根据链接的文档,当返回JSON
时,将调用done
选项。
<!DOCTYPE html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.4/jquery.min.js"></script>
<script src="http://fooda.website/jput.min.js"></script>
</head>
<body>
<script>
$(document).ready(function() {
var tr, button = $("button");
$("#tbody").jPut({
ajax_url: "http://fooda.website/valid_data.json",
prepend: true,
name: "tbody_template",
done: function(e) {
tr = $("table #tbody tr").hide();
button.removeAttr("disabled")
}
});
button.click(function() {
tr.hide();
var rand = Math.floor(Math.random() * tr.length);
tr.eq(rand).show()
});
});
</script>
<button disabled>click</button>
<table jput="t_template" style="display: none;">
<tbody jput="tbody_template" style="display: none;">
<tr>
<td>{{First Name}}</td>
<td>{{Middle Name}}</td>
<td>{{Last Name}}</td>
<td>{{Nationality}}</td>
<td>{{Birthplace}}</td>
<td>{{Age}}</td>
</tr>
</tbody>
</table>
<table>
<tbody id="tbody">
</tbody>
</table>
</body>
</html>
plnkr http://plnkr.co/edit/NURw4djMh9Jp23v3bINP?p=preview
相关文章:
- 我可以在json对象中添加一个函数吗
- 如果使用 lodash 将属性存在于另一个对象中,则向对象添加属性
- 单击更改图标并通过javascript添加一个css类
- fluxxor向一个flux实例添加一组以上的操作
- 当在Ember中点击一个项目时,我如何将一个活动类添加到项目列表中
- 如何在Angular单元测试中从另一个控制器的rootScope将方法添加到rootScope中
- 将添加一个相同类型的事件附加或覆盖以前添加的具有相同名称的事件
- angularjs移除焦点上的活动类并添加到下一个项目
- 使用jquery contains获取一个元素并添加类
- 有没有添加一个ng点击到md背景
- 如何为下拉列表的每个选项添加一个属性
- javascript函数将数据添加到屏幕,但随后被另一个函数覆盖
- 单击删除其中一个添加的行
- 几个jQuery日期选择器小部件,只向其中一个添加类
- 我想创建一个添加新表单的按钮
- Babel v6:我如何/可以编写一个添加新语法(即新运算符)的插件
- GWT SimplePager -为每个下一个和上一个添加历史记录
- 自动提交表单上的最大长度,-为现有的一个添加java脚本代码
- 如何在jquery中移除一个添加了类的类
- 动态更改URL,而不需要将前一个添加到历史堆栈