我是一个在文本区域中创建注释的网页,在第一次页面加载时一切正常。意思是它去做并回发并写入数据库。现在,在没有重新加载页面的情况下,在第二次尝试时如果我更改下拉值并尝试写入数据库,它将不会根据我的代码写一个重复的条目,这很好,我将清除在文本区域中创建的注释(在更新面板中)但是如果我更改下拉值,则连续下一次,在文本区域中实际创建注释的java脚本不会被触发,只是文本区域为空。任何帮助表示赞赏。
<asp:UpdatePanel>
<asp:TextBox ID="txtGenVVOE" name= "txtGenVVOE" TextMode="MultiLine"
runat="server" style="font-size: 11px" rows="4" cols="44" Width="324px"></asp:TextBox></td></tr>
<tr> <td valign="top" align="center" width="50%">
<asp:Button ID="btnCopy"
class="btn" runat="server" onmouseover="this.className='btn btnhov'"
onmouseout="this.className='btn'" style="background: silvergradient" Text="COPY"
OnClientClick="ClipBoard();return false;"
ToolTip="Copy Text to ClipBoard" /> /td></tr> <end update Panel>
我有一个.js脚本来创建名为validate()的注释,该注释在创建注释之前验证字段
function validate() {
create_note()//根据表单上的所有字段创建一个注释。 }
因此,正如我所提到的,此函数验证是在button_click OnClientClick事件上,并且在没有重新加载页面时单击按钮时不会调用。我需要一些帮助来理解为什么脚本只在加载时被调用一次,而不是在对更新面板进行回发后的后续时间。提前谢谢。
答案 0 :(得分:0)
您需要使用ClientScript.RegisterStartUpScript(http://msdn.microsoft.com/en-us/library/z9h4dk8y.aspx)
在后面的代码中重新注册脚本在导致回发的代码中,您可能希望执行以下操作:
Dim script as string = "<script type=""text/javascript"">validate();</script>"
ClientScript.RegisterStartupScript(me,me.gettype(),"NameYourScript",script,false)
如果RegisterStartupScript未命中,请尝试RegisterClientScriptBlock(http://msdn.microsoft.com/en-us/library/btf44dc9.aspx)
我不记得在更新面板时哪一个给我带来了麻烦。