我有一个包含动态添加的用户控件的页面。在这些用户控件中,有一些表单元素,简单的<input>
标签或复杂的第三方控件(例如Telerik RadDatePicker)(技术细节结尾)。设置没有asp:面板的默认提交按钮
这些控件目前被识别为基于ValidationGroup字符串设置的同一表单的一部分。我的问题是,如何获得这些表单元素,并一起提交Enter
并提出正确的回发事件?
我无法使用DefaultButton面板属性,因为我没有在控件服务器端提供的提交按钮的ID。我想我可能可以像这样使用jQuery的clientside:
<input onKeyPress="javascript:if (event.keyCode == 13) {$(this).change(); $('#submitclientid').click();}" ...>
但我不知道如何做到这一点的第三方控件。
更多技术细节:
每个表单元素都在单独的DNN模块中。可以使用模块间通信来传递数据服务器端,从而导致多个模块一起工作,作为页面上单个逻辑表单的一部分。
不能做到的。对于恰好在同一页面上的单独表单,可能会有多个默认按钮。 – 2010-05-05 13:16:12
我想我可能会误解:单个窗体如何具有*多个*默认按钮? DefaultButton的目的是让一个按钮作为它所属的对象的默认按钮。你可以有多种形式 - 每种形式都有自己独特的DefaultButton - 但我不认为有多个DefaultButton是可能的(甚至是普通的)。 在客户端脚本中,您可能需要的属性(如果您想自己分配默认按钮,如果您需要每个表单多于一个,则听起来像是必须这样做)。客户端ID。 – Richard 2010-05-05 15:14:29
1.我无法访问表单控件。 2.页面上只有一个窗体控件,我不能添加另一个窗体控件。 3.完全可以通过标签设置多个默认按钮。然而,我无法做到这一点,因为我无法设置id(我也不能使用面板围绕控件,因为它们被框架动态添加到页面中)。 4.我可以使用客户端ID,但不知道如何与第三方控件(虽然我怀疑这是唯一的解决方案,所以我必须学会如何) –
2010-06-21 19:12:34