1

当我编写表单时,我发现自己在做一些非常重复的打字。例如,如果我<input>在一个表中排列多个 s,我可能会写

<tr>
  <td><label for="repeat">Repeat:</label></td>
  <td><input id="repeat" name="repeat"></td>
</tr>

其中第三个"repeat"用于 GET/PUT 表单提交,第一个和第三个相互关联,第三个用于 DOM 访问,第二个用于(人类)阅读器。

如果我避免排列各种输入,则不需要第一个输入:

<p><label>Repeat: <input id="repeat" name="repeat"></label></p>

但通常我会被要求让他们排队。

一般来说,我认为代码中的重复(DRY)是一件坏事,所以即使是很小的,我想我也会问是否有更好的方法。就目前而言,我有四个拼写错误的机会,其中三个是面向用户的,两个如果输入错误会导致程序问题。

4

2 回答 2

1

如何使用 CSS(宽度或其他东西)排列并继续使用您的代码而不是表格和 tds。

于 2011-06-21T07:31:17.087 回答
0

好吧,显然你对 html 的冗长是正确的,它并不总是符合 DRY 原则。下一个重复出现在处理表单的服务器端代码中。但是,正如您所说的那样,这些“重复”中的每一个都有其自身的含义,并且还可以包含不同的字符串。

通常我尝试通过不手动编写 html 表单而是使用自动生成 html 表单的 web 框架(在我的例子中为Django )来将 DRY 提升到更高的水平。这使您的问题对我来说不是问题。

于 2011-06-21T07:39:18.723 回答