C# 首次使用后,使用OnClientClick打开图表窗口失败
我将VS2015与Windows10和C#一起使用。我的应用程序有4个选项,所有选项都在同一个窗口中串行执行,在gridview中显示输出;某些选项还显示一个按钮,用于在单独的窗口中绘制选定行。 在选项之间切换很好,第一次使用图表也很好。我的问题是,当我关闭图表窗口,运行其他选项,然后返回到一个图表,按钮点击失败。此时将显示一个带有图表图标的窗口,因此OnClientClick似乎已运行,但OnClick从不执行,并且图表未填充 我不懂Java,所以不知道如何调试它。有人能建议一个不使用Java的修复方案或替代方案吗 下面是点击按钮的关键代码C# 首次使用后,使用OnClientClick打开图表窗口失败,c#,asp.net,C#,Asp.net,我将VS2015与Windows10和C#一起使用。我的应用程序有4个选项,所有选项都在同一个窗口中串行执行,在gridview中显示输出;某些选项还显示一个按钮,用于在单独的窗口中绘制选定行。 在选项之间切换很好,第一次使用图表也很好。我的问题是,当我关闭图表窗口,运行其他选项,然后返回到一个图表,按钮点击失败。此时将显示一个带有图表图标的窗口,因此OnClientClick似乎已运行,但OnClick从不执行,并且图表未填充 我不懂Java,所以不知道如何调试它。有人能建议一个不使用Java
<asp:Button
ID="GoChart"
CssClass="button"
runat="server"
Text="Select, then Chart"
Visible="false"
Style="border-radius: 0.4em; width: 9em; float: left; margin-left: 1px; color: white;"
ToolTip="Select a row in the grid, then click here to chart the row. "
OnClick="GoChart_Click1"
OnClientClick="window.open('NewChart.aspx','_blank');return false"/>
第二次使用图表按钮时,永远不会到达GoChart_Click1
谢谢你的帮助。
OnClientClick="window.open('NewChart.aspx','_blank');return false"
到
Return false将停止服务端单击按钮。如果您希望在客户端之后执行服务端操作,请单击删除返回false
部分。
OnClientClick="window.open('NewChart.aspx','_blank');return false"
到
Return false将停止服务端单击按钮。如果您希望在客户端单击后执行服务端操作,请删除
返回false
部分。实际上不应执行功能GoChart\u Click1
,因为在OnClientClick
中,您返回false,指示浏览器不执行要调用的按钮的默认行为GoChart\u单击1
删除返回false代码>以便执行GoChart\u Click1
但是,我认为这不会解决您的问题,因为我不知道您如何从GoChart\u Click1
中使用新打开的窗口
我想您需要共享GoChart\u Click1
的源代码和NewChart.aspx
的源代码,以获得更详细的答案
我认为无论您在GoChart\u Click1
中有什么填充图表的代码,都最好直接放在NewChart.aspx.cs
中的加载事件中。函数GoChart\u Click1
实际上不应该执行,因为在OnClientClick
中,您返回错误信号,表示浏览器不运行执行按钮的默认行为,即调用GoChart\u Click1
删除返回false代码>以便执行GoChart\u Click1
但是,我认为这不会解决您的问题,因为我不知道您如何从GoChart\u Click1
中使用新打开的窗口
我想您需要共享GoChart\u Click1
的源代码和NewChart.aspx
的源代码,以获得更详细的答案
我想无论你在GoChart\u Click1
中有什么填充图表的代码,最好直接放在NewChart.aspx.cs
中的load事件中。如果你要的是一个非Java的解决方案,不要将它标记为Java。我想你指的是javascript。您需要发布用于创建对象和处理单击的代码。如果您要求的是非Java的解决方案,请不要将其标记为Java。我想您指的是javascript。您需要发布用于创建对象和处理单击的代码。谢谢,但是“return false”会打开图表窗口,保留原始窗口不变,这样当我关闭它时,我可以返回网格并选择另一行来绘制图表。如果删除“return false”,图表窗口将替换原始窗口。GoChart\u Click1只包含Response.Redirect(“~/NewChart.aspx”);谢谢,你说得对,GoChart_Click1从未执行过。“return false”加载一个新窗口,保留原始窗口不变,因此我可以返回网格绘制另一行。如果我删除它,图表窗口将替换原来的,我将丢失网格。第一次通过后,GoChart_Click1找不到NewChart.aspx.cs的页面,该页面中填充了图表,因此我得到一个带有图表图标的空白窗口,没有图表。为什么连续使用Go_Chart1无法到达NewChart.aspx.cs非常感谢您帮助我更好地理解OnClient Click@彼得·雷戈里不客气,你可以将问题标记为正确,它与布朗有关;Chrome和Firefox都能正确执行,IE 11就是问题所在。由于我是StackOverflow的新手,您如何标记答案;我看到向上/向下箭头提供1或2。我是将两个正确答案都标上,还是只标1?谢谢,但是“return false”会打开图表窗口,保留原始窗口不变,这样当我关闭它时,我可以返回网格并选择另一行来绘制图表。如果删除“return false”,图表窗口将替换原始窗口。GoChart\u Click1只包含Response.Redirect(“~/NewChart.aspx”);谢谢,你说得对,GoChart_Click1从未执行过。“return false”加载一个新窗口,保留原始窗口不变,因此我可以返回网格绘制另一行。如果我删除它,图表窗口将替换原来的,我将丢失网格。第一次通过后,GoChart_Click1找不到NewChart.aspx.cs的页面,该页面中填充了图表,因此我得到一个带有图表图标的空白窗口,没有图表。为什么连续使用Go_Chart1无法到达NewChart.aspx.cs非常感谢您帮助我更好地理解OnClient Click@彼得·雷戈里不客气,你可以将问题标记为正确,它与布朗有关;Chrome和Firefox都能正确执行,IE 11就是问题所在。由于我是StackOverflow的新手,您如何标记答案;我看到向上/向下箭头提供1或2。我是把两个答案都标上,还是只标1?