用JavaScript触发Ext.net按钮点击

Triggering an Ext.net button click with JavaScript

本文关键字:按钮 net Ext JavaScript 触发      更新时间:2023-09-26

我有一个ext:按钮。我想根据确认消息的条件,通过JavaScript触发它的OnClick事件。

我的按钮

<ext:Button ID="btnAddEsya" Text="text" runat="server" Icon="Add" >
    <DirectEvents>
        <Click OnEvent="btnAddEsya_Click" ViewStateMode="Enabled">
        </Click>
    </DirectEvents>
</ext:Button>

代码隐藏(仅相关部件)

[DirectMethod]
    public void btnAddEsya_Click(object sender, EventArgs e)
    {
     if (/*Checking conditions here*/)
        {
            X.Msg.Confirm("Warning", "Save?", new JFunction { Fn = "SaveLine" }).Show();
        }
}

Java脚本

<script language="javascript" type="text/javascript">
        var SaveLine = function (btn) {
            if (btn == 'yes') {
                alert('TEST YES');
                NewLine.click();
                document.getElementById('btnAddEsya').click();

            }
            else if (btn == 'no')
            { alert('TEST NO'); }
        };
            </script>

到目前为止,我尝试了这种方法,__doPostBack('tnAddEsya','OnClick');方法,并将按钮分配给变量并将其调用为variablename.click()。它们都不起作用。

这可能是关于ext.net按钮点击事件吗?

编辑:

最近我也试过这个,但也没用。还有

<script language="javascript" type="text/javascript">
        btnAddEsya = document.getElementById('<%= btnAddEsya.ClientID %>');
        var SaveLine = function (btn) {
            if (btn == 'yes') {
                alert('TEST YES');
                btnAddEsya.click();
                }
            else if (btn == 'no')
            { alert('TEST NO'); }
        };
            </script>

你能试试这样的东西吗?

#{btnAddEsya}.fireEvent("click");

哦,好吧,对不起,我以为你想调用javascript点击事件,我的错误。

在你的按钮中试试这个代码:

<DirectEvents>
    <Click OnEvent="btnAddEsya_Click" ViewStateMode="Enabled">
        <Confirmation ConfirmRequest="true" Title="Warning" Message="Save?" />
    </Click>
</DirectEvents>

它将在调用DirectEvent之前请求确认。