【问题标题】:Go Dynamically Removing HTML onClickGo 动态删除 HTML onClick
【发布时间】:2014-09-25 04:59:38
【问题描述】:

我是 Go 新手。我越来越了解基础知识,但现在我正在尝试学习如何将代码与 HTML 接口。

我的简单场景是,我有一个带有列表的网页,该列表由 Go 从数据库中获取信息创建,然后从一组模板构建 html 页面。我想要的只是制作一个简单的列表,当单击<div> 或其他东西时,我可以以某种方式将其标记为完成/完成。此外,为了能够完全删除我的网页列表中的“行”,基本上是一个 div。

所以我的列表将表明某些内容已完成(我假设我必须使用 Go 来更改 css)并删除一个项目(完全删除该 html 块)。请记住,这些项目存储在数据库中,因此我必须能够识别特定项目。

任何帮助、想法、资源、伪代码、指针将不胜感激!

【问题讨论】:

  • 你的想法是错误的。您的服务器端语言不会编辑您的标记和/或 CSS。您的服务器端语言 (Go) 只为浏览器提供标记来呈现。然后,您可以通过客户端语言 (Javascript) 动态操作它,或者将您的页面发布回您的 Go,它提供 不同的 标记。 Go 无法更改浏览器中的内容,除非它提供 不同 标记供浏览器呈现(完整页面刷新,或客户端 + 服务器的组合.. AJAX)。
  • 听起来你需要从头开始构建 Go web 应用程序,请参阅 -- lincolnloop.com/blog/djangonaut-building-webapp-go-gorilla 指向 bitbucket.org/yml/gowebexp ,这显然应该是一个比微不足道的应用程序。

标签: html go


【解决方案1】:

在 Web 开发中,代码执行有两个“端”;浏览器和服务器,又名。前端和后端。

“点击”发生在浏览器中,并将在浏览器中执行代码。反过来,该“浏览器代码”可能会或可能不会联系服务器以获取其他信息,然后将该信息呈现给浏览器。

这意味着;服务器无法控制浏览器中发生的事情*,反之亦然。这就是 Web 开发的基础知识。

Go 是一种非常适合构建服务器的语言。 Javacript 是大多数浏览器都能理解的语言。你需要的是 Javascript,而不是 Go。

* 这并不完全正确,但足以作为开始学习的基础。

【讨论】:

  • 感谢您的反馈。我很确定 php 可以处理 html 元素(不确定可以走多远,可能不会走多远),例如表单验证,所以我想做的就是消除 Go 无法更改任何 html 元素,并且我必须使用 ajax 来完成此操作。
  • 嗯,不完全如此。 Go 可以解析和呈现 HTML 模板,但 onclick 处理程序始终是 javascript(对于 php 也是如此)。干杯!
  • 那么你会说,当用户点击时删除 html 元素(以及从数据库中删除)的最佳方法是使用 ajax 吗? Go 的唯一作用是创建页面并从 ajax 接收删除并在数据库中删除它?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-12-29
  • 1970-01-01
  • 2021-06-03
  • 1970-01-01
  • 2011-08-26
相关资源
最近更新 更多