使用JavaScript在asp.net网站上根据用户选择弹出窗口来操作网页?

时间:2015-02-10 16:26:25

标签: javascript c# jquery asp.net

我有一个asp.net网站。我想在页面后面的代码中打开一个要求用户确认的弹出窗口。

我有一些值下拉列表。 “取消门票”是其中一个值。因此,当用户选择此项目时,我想显示一个确认框,询问用户“您确定要取消该票证吗?”

我尝试过使用JavaScript的代码,

HTML:

<asp:DropDownList ID="ddlStatus" runat="server" CssClass="selectstyle" DataTextField="Name" DataValueField="ID" onchange ="GetSelectedItem(this);" />

JavaScript:

<script type="text/javascript">
    function GetSelectedItem(x) {
        if (x.value == 4) {
            return confirm("Are you sure you want to cancel support ticket ?");
        }
    }

正在显示我想要的弹出窗口。

现在,如果用户点击“确定”,我想让文本框和标签可见,如果用户点击“取消”,则重置下拉列表

5 个答案:

答案 0 :(得分:0)

答案 1 :(得分:0)

你会用

ClientScriptManager.RegisterClientScriptBlock

https://msdn.microsoft.com/en-us/library/bahh2fef%28v=vs.110%29.aspx

答案 2 :(得分:0)

正确的方法是检查值并通过javascript(this可能会帮助您)在客户端提示用户。

但如果你坚持要通过服务器,你可以:

  • 执行ajax调用,然后提示用户进行确认,
  • 或创建另一个表单/视图来执行此操作。

答案 3 :(得分:0)

尝试添加引导模式并注入像ClientScriptManager.RegisterClientScriptBlock (Type, String,"$(modal).modal('show')")

这样的脚本

请记得添加bootstrap js和css

答案 4 :(得分:0)

我的建议是:

1-使用取消按钮(和/或您想要的其他元素/控件)创建一个不可见的div

<div id="div_dialog" style="display: none;" >
    <h3>Do you want to cancel?</h3>
    <br />
    <asp:Button ID="Button1" runat="server" Text="Button"  onclick="Button1_Click"/>
</div>

2-使用jquery将您的下拉菜单用作触发器并对话您的隐藏div

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<script src="http://ajax.aspnetcdn.com/ajax/jquery.ui/1.8.9/jquery-ui.js" type="text/javascript"></script>
<link href="http://ajax.aspnetcdn.com/ajax/jquery.ui/1.8.9/themes/start/jquery-ui.css"
        rel="stylesheet" type="text/css" />


<script type="text/javascript">
    $(document).ready(function () {
      // this will open the popup when drop donw change 
      //(aply your filter by selected item)
        $("#<%=DropDownList1.ClientID%>").change(function () {
            $("#div_dialog").dialog({
                dialogClass: 'DynamicDialogStyle',
                height: 160,
                width: 220,
                title: "My modal Dialog Popup",               
                modal: true
            });
            return false;
        });
        // this function will do the postback and fire the event in the popup button
       $('#<%=Button1.ClientID%>').click(
         function() {
            <%=this.Page.ClientScript.GetPostBackEventReference(new PostBackOptions(this.Button1))%>;
       });
    });

</script>

3-而不是使用ddlStatus_Tickets_SelectedIndexChanged事件,请在确认按钮事件中处理您的确认码,然后单击

    protected void Button1_Click(object sender, EventArgs e)
    {
        // you code
    }