gpt4 book ai didi

javascript - 从 VB 代码后面调用 javascript 代码时遇到问题

转载 作者:行者123 更新时间:2023-12-03 03:47:13 25 4
gpt4 key购买 nike

我在 ASP/VB.net 中遇到了奇怪的行为。我试图从后面的 VB 代码调用 JS,但什么也没有发生。我在几个页面上使用了类似(几乎相同)的方法,效果很好。然而,它对这个不起作用。我试图问用户是/否类型的问题。结果存储到名为confirm_value的隐藏字段中,然后如果用户回答“是/继续”,则JS再次单击按钮

<asp:HiddenField  runat="server" id ="confirm_value"/>

但是 JS 永远不会触发。我什至尝试进行一个简单的“Hi There”警报调用,如注释代码中所示,但这也不起作用。什么可以阻止 JS 代码触发?

VB代码:

If -1000 < RadNumericTextBox1.Text Then
If confirm_value.Value <> "Yes" Then
Dim cs As ClientScriptManager = Page.ClientScript
' Check to see if the startup script is already registered.
If (Not cs.IsStartupScriptRegistered(Me.GetType(), "ConfirmScriptRXOrder")) Then
Dim cstext1 As String = "Confirm('This item has less in stock than your order. Do you want to order it anyway?');"
'Dim cstext1 As String = "alert('Hi there!');"
cs.RegisterStartupScript(Me.GetType(), "ConfirmScriptRXOrder", cstext1, True)
End If
'return here, JS will re-click submit button after okaying the message,.
Return
Else
confirm_value.Value = "No"
Mycart(ddCyl.SelectedValue.ToString, ddSph.SelectedItem.Text, ddCyl.SelectedItem.Text, RadNumericTextBox1.Text, tbtray.Text)

RadGrid1.DataBind()
End If
End If

JS 代码:

<script type = "text/javascript">
function Confirm(message) {
if (confirm(message)) {
var x = document.getElementById('<%= confirm_value.ClientID%>');
x.value = 'Yes';
document.getElementById('<%=btnOrder.ClientID%>').click();
} else {
var x = document.getElementById('<%= confirm_value.ClientID%>');
x.value = 'No';
}
}
</script>

最佳答案

我讨厌回答我自己的问题,但解决方案在我最初发布的内容中并不明显,并且与我发布的实际代码无关。我将页面精简为提交按钮、JS 和 VB 调用。有效!我开始添加回代码,直到它损坏为止。问题是该按钮位于 asp:updatepanel 内。我将按钮移到更新面板之外,它按照我想要的方式工作了!看起来视觉上不太平衡,但是......因此,如果您遇到过这样的情况,请记住这篇文章!

关于javascript - 从 VB 代码后面调用 javascript 代码时遇到问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45334387/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com