我正在网页上创建一个表单,但我想在用户输入值时更改该表单。
示例:如果我们有一个下拉菜单:ObjectType
有人选择Cars
,当我选择下面的新选项时,我会选择Vegetables
。 Say,Make,Model,Year,&注释
然而,如果该人选择Root Vegetables
,那么我想要的只是appendChild()
的复选框。
我的问题是最好的方法是什么。我的形式非常错综复杂,可能会有20种不同的设置,但我希望对这些设置进行排序。我使用selectElementById()
和AJAX请求,但我最终得到了乱序字段。最重要的是,偶尔缓慢的连接会让个人等待场出现。
我应该将所有这些内容保存在数组中,而不是使用这些表单对象(技术上是表的一部分)加载HTML页面吗?是否可以只加载一个HTML页面或XML对象,并在保存后对该结果使用<td>
<strong>Abilities:</strong>
</td>
<td>
<textarea
id ='abilities'
name="abilities"
style="width:100%" rows="4"
onchange='userCreation.updateAbilities()'
onkeyup='userCreation.updateAbilities()'>
</textarea>
</td>
?
我正在加载的对象是行,这里是一个示例以及它需要能够执行的操作:
tr
我的页面中有一个表格,我正在使用JavaScript创建一个新的innerHTML
元素,将其设置为{{1}},然后附加该子元素。有更好的方法吗?
答案 0 :(得分:0)
我只是将所有表单元素放在一个页面中,并隐藏那些你没有使用CSS的表单元素。这样你维持秩序,而不必等待字段显示。它会略微减慢页面加载时间,但会让您的生活变得更加简单。
否则,我会将每个字段的名称(或其他)存储在数组或对象中,当需要加载AJAX时,首先查找其位置并将其放在那里。
答案 1 :(得分:0)
只需在页面中拥有整个for,只需根据用户交互更改不同部分的可见性,而不是通过AJAX动态加载元素。