[英]ValidateEdit event doesn't fire on Ext rowEditor
First my code without the stuffs not concerned : 首先我的代码没有无关紧要的东西:
<ext:Window ID="CommentPopUp" runat="server">
<Content>
<ext:GridPanel ID="gvComment" runat="server">
<Plugins>
<ext:RowEditor runat="server" SaveText="Save" >
<Listeners>
<CancelEdit Handler="DeleteRow()" />
<ValidateEdit Handler="ValidateComment()"/>
</Listeners>
</ext:RowEditor>
</Plugins>
<ColumnModel>
<Columns>
<ext:Column ColumnID="CommentDate" Header="Date" Align="Center" DataIndex="CommentDate" />
<ext:Column ColumnID="CommentCreator" Header="User" DataIndex="CommentCreator" />
<ext:Column ColumnID="Comment" Header="Comment" DataIndex="Comment" Width="282" >
<Editor>
<ext:TextArea ID="CommmentEditor" runat="server" />
</Editor>
</ext:Column>
</Columns>
</ColumnModel>
</ext:GridPanel>
</Content>
</ext:Window>
My problem is that the ValidateComment()
handler on the ValidateEdit
listener is never fire when I click on the save button of my rowEditor, whereas the CancelEdit
handler works perfectly. 我的问题是,当我单击rowEditor的保存按钮时,
ValidateEdit
侦听器上的ValidateComment()
处理函数永远不会触发,而CancelEdit
处理函数却可以正常工作。 I tried also with the Fn
instead of Handler
and with the ValidateEdit
listener directly on the GridPanel but same issues. 我也尝试使用
Fn
而不是Handler
并直接在GridPanel上使用ValidateEdit
侦听器,但是存在相同的问题。
Any ideas of what's wrong in this code ? 关于此代码有什么问题的任何想法?
EDIT 编辑
Got it. 得到它了。
When the edit textArea is empty nothing append but when it contains some text ValidateEdit
is fired. 当edit textArea为空时,什么都没有追加,但是当它包含一些文本时,
ValidateEdit
被触发。 So new question : 所以新的问题:
What handler can I use for intercept click on the row editor save button even if the edit field is empty ? 即使编辑字段为空,我可以使用什么处理程序来拦截行编辑器保存按钮上的单击?
Everything works fine with my test case; 我的测试用例一切正常。
code behind; 后面的代码;
protected void Page_Load(object sender, EventArgs e)
{
str.DataSource = this.Data;
str.DataBind();
}
private object[] Data
{
get
{
DateTime now = DateTime.Now;
return new object[]
{
new object[] { "", 0.02, now },
new object[] { "Alcoa Inc", 29.01, now },
new object[] { "Altria Group Inc", 83.81,now },
new object[] { "American Express Company", 52.55, now },
new object[] { "American International Group, Inc.", 64.13, now }
};
}
}
presentation layer; 表示层
<ext:GridPanel ID="gvComment" runat="server">
<Plugins>
<ext:RowEditing runat="server" SaveText="Savexx">
<Listeners>
<CancelEdit Handler="alert('bumm delete');">
</CancelEdit>
<ValidateEdit Handler="alert('bumm validate');" ></ValidateEdit>
</Listeners>
</ext:RowEditing>
</Plugins>
<Store>
<ext:Store runat="server" ID="str">
<Model>
<ext:Model runat="server">
<Fields>
<ext:ModelField Name="Comment"></ext:ModelField>
<ext:ModelField Name="CommentCreator"></ext:ModelField>
<ext:ModelField Name="CommentDate"></ext:ModelField>
</Fields>
</ext:Model>
</Model>
</ext:Store>
</Store>
<ColumnModel>
<Columns>
<ext:Column ColumnID="CommentDate" runat="server" Header="Date" Align="Center" DataIndex="CommentDate" />
<ext:Column ColumnID="CommentCreator" runat="server" Header="User" DataIndex="CommentCreator" />
<ext:Column ColumnID="Comment" runat="server" Header="Comment" DataIndex="Comment" Width="282" >
<Editor>
<ext:TextArea ID="CommmentEditor" runat="server" />
</Editor>
</ext:Column>
</Columns>
</ColumnModel>
</ext:GridPanel>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.