为 select 下拉菜单设置值的首选方法是什么?
What's the preferred way to set values for select dropdowns?
我有一个 select 下拉菜单,我想知道在设置子选项的值时最好的约定是什么。
这是我的表单域:
<div class="field">
<label for id="schedule_type">Schedule Type</label><br>
<select name="schedule_type" id="schedule_type">
<option value="recurring">Recurring — Create a series of sessions</option>
<option value="nonrecurring">Not recurring — Create just one session</option>
</select>
</div>
注意我使用了值 "recurring"
和 "nonrecurring"
。我也看到过使用整数的示例:
<option value="1">Recurring — Create a series of sessions</option>
<option value="2">Not recurring — Create just one session</option>
我在迂腐?没有一个比另一个有优势吗?
除了较大的 [重要] 页面大小(值 1
与 recurring
,字节的微小差异会影响页面渲染),在前端没有什么问题。尽管这 [可能] 会影响后端。
考虑一下(后端不可知论者):
- 我将
form.submit
上的值 recurring
传递给服务器
处理中。
- 服务器在保存前会先查询实际的schedule类型
id
是什么(即是否是外键)
- 然后保存。
反对在保存时将实际 id
传递给服务器:
- 我将
form.submit
上的值 1
传递给服务器
处理中。
- 然后保存。
第二个会比第一个快。
但同样,根据场景和后端设计,一个可以优于另一个,也可以完全忽略不计。
我有一个 select 下拉菜单,我想知道在设置子选项的值时最好的约定是什么。
这是我的表单域:
<div class="field">
<label for id="schedule_type">Schedule Type</label><br>
<select name="schedule_type" id="schedule_type">
<option value="recurring">Recurring — Create a series of sessions</option>
<option value="nonrecurring">Not recurring — Create just one session</option>
</select>
</div>
注意我使用了值 "recurring"
和 "nonrecurring"
。我也看到过使用整数的示例:
<option value="1">Recurring — Create a series of sessions</option>
<option value="2">Not recurring — Create just one session</option>
我在迂腐?没有一个比另一个有优势吗?
除了较大的 [重要] 页面大小(值 1
与 recurring
,字节的微小差异会影响页面渲染),在前端没有什么问题。尽管这 [可能] 会影响后端。
考虑一下(后端不可知论者):
- 我将
form.submit
上的值recurring
传递给服务器 处理中。 - 服务器在保存前会先查询实际的schedule类型
id
是什么(即是否是外键) - 然后保存。
反对在保存时将实际 id
传递给服务器:
- 我将
form.submit
上的值1
传递给服务器 处理中。 - 然后保存。
第二个会比第一个快。
但同样,根据场景和后端设计,一个可以优于另一个,也可以完全忽略不计。