html中有没有类似excel表格,可以填数的表格控件?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了html中有没有类似excel表格,可以填数的表格控件?相关的知识,希望对你有一定的参考价值。
我想在网页中用表格填数,提交。请问,有没有这样类似excel表格的控件呢?怎样实现那种功能呢?
我是想在网页中加入excel表格的效果。可以填表,然后提交。
如果只是在局域网里用,就简单多了。 参考技术C html是静态的,ASP是动态的,后者才可以 参考技术D <table border="2"//设置边框大小>
<tr //行>
<td //列>111</td>
</tr>……
</table>
如何构建具有特定行数的表格视图?
【中文标题】如何构建具有特定行数的表格视图?【英文标题】:How to build a Table View with specific number of rows? 【发布时间】:2018-01-11 11:33:30 【问题描述】:我一直在阅读类似的问题,直到现在都没有解决这个错误,或者我还没有找到它。
我有一个 TableView,我需要表格有特定的行数。
现在它可以处理来自数组的通知计数。在这个数组中,我保留了来自服务器的通知。 但我希望如果这个数组计数大于 40,则行数为 40,它们不是数组的计数。
这是我的代码:
class ClassName: UITableViewController, UITabBarControllerDelegate
public var notifications: [APINotification] = []
override func viewDidLoad()
super.viewDidLoad()
self.tabBarController?.delegate = self
tableView.rowHeight = UITableViewAutomaticDimension
tableView.estimatedRowHeight = 140
override func didReceiveMemoryWarning()
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
override func viewDidAppear(_ animated: Bool)
self.notifications = []
self.getLastNotifications()
APIAuth.shared.count_badge = 0
self.tabBarController?.tabBar.items![0].badgeValue = nil
public func getLastNotifications()
let req = Notification()
req.getLastNotifications(onComplete: events in
self.notifications = events
DispatchQueue.main.async(execute:
self.tableView.reloadData()
)
)
override func numberOfSections(in tableView: UITableView) -> Int
return self.notifications.count
// There is just one row in every section
override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int
return 1
// Set the spacing between sections
override func tableView(_ tableView: UITableView, heightForHeaderInSection section: Int) -> CGFloat
return 10
override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell
let event = self.notifications[indexPath.section]
let cell = tableView.dequeueReusableCell(withIdentifier: "controller", for: indexPath) as! Controller
cell.bodyLbl.text = event.description
cell.typelbl.text = event.type
cell.typelbl.sizeToFit()
cell.titleLbl.text = event.title
cell.subjectLbl.text = event.subject?.name
return cell
感谢您的帮助!
【问题讨论】:
【参考方案1】:您可以将此方法更改为:
override func numberOfSections(in tableView: UITableView) -> Int
return self.notifications.count > 40 ? 40 : self.notifications.count
这将显示与您从通知中获得的行数一样多的行,但如果它大于 40,它将仅显示 40。要使其始终显示 40,只需将 return 40 改为,但这可能会使您的应用程序崩溃,数组将包含少于 40 个的项目。
Ps 你显示 40 个部分,没有行将其更改为行,而是你需要机会你的代码:
override func numberOfSections(in tableView: UITableView) -> Int
return 1
override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int
return self.notifications.count > 40 ? 40 : self.notifications.count
override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell
let event = self.notifications[indexPath.row]
...
【讨论】:
谢谢,完美!我有个疑问。您的代码和此代码有什么区别:覆盖 func numberOfSections (in tableView: UITableView) -> Int var count = self.notifications.count if (count> 4) count = 4 return down ?什么是正确的解决方案,或者可以像这两种形式那样做? 没有区别,我相信编译器的输出在两个例子中都是一样的。有多种方法可以达到类似的结果。有关更多选项,请参阅@Upholder Of Truth 答案。所有这些都会给你相同的结果。【参考方案2】:有几种方法可以实现这一点:
简单明了:
return min(self.notifications.count, 40)
一种快速的方法:
guard self.notifications.count < 40 else
return 40
return self.notifications.count
另一个更详细的版本:
return self.notifications.count < 40 ? self.notifications.count
另一个更简单的版本:
if self.notifications.count > 40
return 40
else
return self.notifications.count
使用您认为最适合目的的版本。
如果我觉得自己很 Swifty(甚至是一个词),我可能会选择 1 或 2。
【讨论】:
感谢您在回复中提供的多个选项。它们对我很有用。【参考方案3】:试试下面的代码:
// There is just one row in every section
override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int
if self.notifications.count > 40
return 40
return self.notifications.count
【讨论】:
【参考方案4】:要限制最大节数,只需检查数组大小:
override func numberOfSections(in tableView: UITableView) -> Int
var count = self.notifications.count
if (count > 40)
count = 40
return count
【讨论】:
以上是关于html中有没有类似excel表格,可以填数的表格控件?的主要内容,如果未能解决你的问题,请参考以下文章
使用CSS对HTML表单进行修饰,效果与excel表格类似,可以输入数据。