我正在开发一个简单的应用程序,它显示了db的联系人列表。可以向数据库添加新联系人,如果成功添加了新联系人,则可以看到这样的消息。
该位置显示在div内的标签中,默认情况下设置为Visible = false。成功添加联系人后,Visible设置为true,并在标签文本中显示一条消息。到目前为止一切都很好。
问题是我希望消息在10秒后消失,为此我想使用jQuery。我需要帮助的是如何从代码隐藏文件中触发jQuery函数。我试图检查元素是否存在,如果是这样,那么就没有任何反应。
提前致谢!
来自背后的代码:
protected void ContactObjectDataSource_Inserted(object sender, ObjectDataSourceStatusEventArgs e) {
if (e.Exception != null) {
AddErrorMessage("An error occurred.");
e.ExceptionHandled = true;
}
else {
successMessage.Visible = true;
message.Text = "The contact was successfully added!";
}
}
来自default.aspx的:
<div id="successMessage" runat="server" visible="False">
<asp:Label ID="message" runat="server"></asp:Label>
</div>
来自js文件的:
var Capsule = {
hideMessage: function () {
setTimeout(function() {
$("#successMessage").hide("fade", {}, 1000);
}, 5000);
}
}
window.onload = Capsule.init;
答案 0 :(得分:1)
您可以使用以下代码从c#:
调用jquery函数ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "tmp", "<script type='text/javascript'>hideMessage();</script>", false);
答案 1 :(得分:0)
您好,为此,您可以使用Ajax.dll并创建Ajax.Method。
注意:但在此方法中不能使用任何服务器端控件。您需要传递方法中的值,并在客户端显示您的输出消息。 return false也不会回发你的页面。
请参阅以下部分以了解实际实施情况。