为什么禁用<select>包含在表单提交中?</select>

时间:2014-04-07 20:27:46

标签: html forms http

我有一个包含此禁用字段的表单

<select disabled="disabled" name="organization.id" class="userInputField">
  <option value="2">organization</option>
</select>

当我将表单提交到服务器时(作为常规HTTP POST,而不是AJAX),此字段 包含在请求参数中,但我认为禁用字段应该被排除?

请忽略&amp;关闭

我的错误 - 一些流氓JavaScript在提交表单之前删除了disabled属性。谢谢你的帮助,很抱歉浪费你的时间。

1 个答案:

答案 0 :(得分:3)

禁用时,您的选择包含在帖子中。我在Firefox下使用了以下最小页面作为测试,只看到了非禁用字段。表单提交的Firebug输出如下所示

<html>
<head>
</head>
<body>
<form method="post" action="test.html">
<input type="text" name="test1" disabled>
<select  name="organization.id" class="userInputField" disabled="disabled">
   <option  selected value="2">organization</option>
</select>
<button name="submitbutton" type="submit">Test</button>
</form>
</html>

Submit in Firebug

我建议你检查一下是否有以下任何一种情况:

  • 误读了细节
  • 让您的HTML嵌套错误
  • 给两个相同名称的字段
  • 在表单处理脚本中意外声明了一个同名变量。

我还建议你在网上提供一个更完整的例子。