1

下拉列表与项目动态绑定。在一个要求中,下拉列表选择了特定值并被禁用。我已通过 JQuery 将下拉列表的属性修改为禁用,如下所示

 $("#cmbTeamList option[value='2']").attr("selected", "selected");
 $('#cmbTeamList').attr("disabled", "disabled");

当试图检查服务器端下拉列表的选定值时,选定的索引不起作用。

if (cmbTeamList.SelectedIndex != 0)
   {
    //logic is there

   }

请帮助我克服这个问题。

4

3 回答 3

1

当您禁用表单元素时,它不会发送到服务器。您可以将选择的值存储到隐藏的输入中。

$('#hiddenInput').val($('#cmbTeamList').val())
于 2012-09-28T08:07:37.840 回答
1

这是因为发送到服务器的/请求disabled中不包含元素。GETPOST

另一种方法是使用readonly属性。这可以防止用户修改前端的控件,但意味着该值仍然在请求中发送。

但是控件的样式并没有改变,因此您需要使用 CSS 手动将控件灰显,以使其明显无法修改。

于 2012-09-28T08:08:48.527 回答
1

禁用的表单元素不会发送到服务器。您可以为表单创建一个 onsubmit 处理程序,以在提交表单之前启用所有元素。

于 2012-09-28T08:13:21.897 回答