添加html块

时间:2013-10-07 14:14:57

标签: jquery html asp.net

我有一个asp.net网络表格,收集有关诊所和患者的详细信息。在表格的底部我有一个块,基本上要求患者信息(名字,姓氏,地址等) 我可以有n个患者(n可以从1到10)。 我在想我会写一个html块然后问一个像

这样的问题

添加另一名患者?

我必须动态生成类似于第一个具有唯一ID的块。

这种问题的最佳方法是什么?我如何处理验证?

由于

2 个答案:

答案 0 :(得分:1)

使用$.clone方法

这是一个例子

http://jsfiddle.net/eTh2f/1/

请确保您不使用ID,因为您最终会使用重复的ID


更新:

  • 我看到你真的不明白这里的概念。 ID是唯一的(将其视为政府ID号),而不是两个ID可以具有相同的ID。

  • 虽然类不是唯一的(就像名称一样,很多人都使用相同的名称),但可以将它们分配给多个元素。

何时使用

将id用于不应在同一页面上重复的元素。 例如,主标头的id可以是id="header_container"。虽然列表中的项目永远不会具有相同的ID,因为它们不是唯一的(请注意我们正在讨论标记而不是它的内容)。

实施例

对于id,标题应该没问题。所以:

<div id="header">... header contents ...</div>

对于课程,项目列表也应该没问题

<ul>
    <li class="someone" > me <li>
    <li class="someone" > you <li>
    <li class="someone" > he <li>
</ul>

不能做:

<ul>
    <li id="someone" > me <li>
    <li id="someone" > you <li>
    <li id="someone" > he <li>
</ul>

回到jquery

你可以在jquery中使用任何类型的有效css选择器

所以,如果我要获得标题,我将使用

$('#header')

,其中 #是ID

的标志

如果我选择 ALL 列表项

$('.someone')

,其中 .是ID

的标志

如果您使用多个ID

会发生什么

首先你应该知道使用id并不是一个非常聪明的主意。我很少使用它们(如果你能避免麻烦的话)。

所以使用类。因为如果这样做,它们仍然只能分配给一个元素。 或使用新的data属性。

但是如果你100%确定它们永远不会重复,那么就使用它们。例如,数据库中有一组记录。确定他们没有相同的id然后只使用元素的属性id。

如何在jquery中选择一个文本框

简单地指定一个班级。如果你不想那么简单

$('input')

将选择所有输入标签,但仍然有点不方便,但不用担心。 您可以通过

选择输入名称
$('input[name="the_name_of_the_input"]')

最后

请通过Google搜索详细了解该主题。我只是想有空闲时间。所以我投资了。但努力工作以获得如何坚持的答案

答案 1 :(得分:0)

我建议您使用多个HTML输入,例如:

<input type="text" name="name[]"/>

然后,在你的JavaScript中,你只需追加,或像其他人那样克隆,田野!您可以在服务器端轻松验证,因为表单中的每个字段都是一个数组,如

(name[0] = 'patient1', name[1] = 'patient2', etc)

计算输入数量,然后验证它们。