【发布时间】:2018-03-24 03:47:06
【问题描述】:
我目前正在做一个项目,该项目需要在 javascript 代码中执行一系列事件后触发 asp:button 点击事件。
请在下面查看我的代码:
这是我的按钮,它是点击事件:
<asp:Button ID="btnRefresh" name="btnRefresh" runat="server" Text="btnRefresh" onclick="btnRefresh_Click" />
protected void btnRefresh_Click(object sender, EventArgs e)
{
MyGrid.DataSource = null;
MyGrid.DataSource = GetDataForGrid();
MyGrid.DataBind();
}
我引用了一个 javascript 文件,该文件包含我所有的页面 javascript 代码。我这样做是因为我真的不喜欢在 .aspx 文件中混合我的 javascript 代码。
这是函数在我的外部 .js 文件中的样子:
function Refresh() {
var btn = $(document).getElementById('btnRefresh');
if (btn) {
btn.click();
}
else {
alert('false');
}
}
我也尝试过在互联网上看到的其他方法如下所有这些都没有运气:
document.getElementById('btnRefresh');
__doPostBack('btnRefresh', '');
__doPostBack('btnRefresh', 'Click');
$('#btnRefresh').click();
有人可以指点我一个好方法吗?谢谢!
编辑:
我想做的是:
我在 UpdatePanel 中有一个 gridview。我有一个触发器,它在单击 btnRefresh 时触发。所以基本上,它刷新了我的gridview。因此,我不能使用按钮的 OnClick 属性来调用我的 javascript 函数,因为我不会首先单击按钮。我需要能够从我的外部 javascript 调用 btnRefresh_Click 事件,以便触发我的触发器来更新我的 GridView。
编辑 2:
我尝试使用以下行在 .aspx 页面本身上定义我的btn:
var btn = $("#");
我还修改了我的 JS 代码如下:
函数刷新(){ 如果(btn){ btn.click(); } 别的 { 警报('假'); } }
js 能够看到btn 并且事件通过了btn.click()
但是,我的btnRefresh_Click 仍然没有启动。我在这里遗漏了什么吗?
【问题讨论】:
标签: javascript jquery click aspbutton