ASP.Net中的弹出窗口

时间:2013-08-29 14:55:48

标签: c# javascript asp.net popup

我对C#和ASP.Net非常新。有人知道如何在Asp中创建弹出窗口吗?

我的情景:

当我点击一个按钮时,它会检查一些状态。如果条件正在满足,则由于状态(此处:达到百分比)将抛出弹出窗口。

因此,单击相同的按钮将抛出2个不同的弹出窗口。

  

(你想中止未完成的合同吗?是 - 否)

     

(你想完成没有达到目标的合同吗?是 - 否)

因此,当条件满了时,对话框将根据相同的按钮显示。

任何人都可以帮助我吗? (C#和javascript背后的代码?)

2 个答案:

答案 0 :(得分:0)

我们用它来调用构建/显示弹出窗口的js函数。希望它有所帮助。

protected void ibtnEdit_Click(object sender, ImageClickEventArgs e)
{
    // do some stuff then call a js function to show a popup
    Page.ClientScript.RegisterStartupScript(this.GetType(), "clientScript", "<script     language=JavaScript>showAPopUp();</script>");
}

编辑:在aspx中定义js函数,例如:

<script>
function showAPopUp() 
{
    $( "#MyDialog" ).dialog( "open" );
    //alert("some simple message");
}
</script>   

使用jquery ui(http://jqueryui.com/dialog/)可以使用这里显示的代码。或者根据注释掉的行使用警报进行简单的弹出。

编辑2:

if (confirm("Confirm something?") == true) 
{
    // they pressed ok
}
 else
{
    // they cancelled
}

答案 1 :(得分:0)

感谢所有试图提供帮助的人。

我决定使用Javascript。

这是aspx-File的代码摘录:

<pre lang="cs">&lt;script type=&quot;text/javascript&quot; language=&quot;javascript&quot;&gt;

        String.Format = function () {
            var s = arguments[0];
            for (var i = 0; i &lt; arguments.length - 1; i++) {
                var reg = new RegExp(&quot;\\{&quot; + i + &quot;\\}&quot;, &quot;gm&quot;);
                s = s.replace(reg, arguments[i + 1]);
            }
            return s;
        };
        var dialogConfirmed = false;

        function SetDialogConfirmedFalse() {
            dialogConfirmed = false;
        }

        function ConfirmDialog(obj, title, dialogText) {
            if (!dialogConfirmed) { //!$('#dialog').is(':data(dialog)')
                $('body').append(String.Format(&quot;&lt;div id='dialog' title='{0}'&gt;&lt;p&gt;{1}&lt;/p&gt;&lt;/div&gt;&quot;,
                    title, dialogText));

                $('#dialog').dialog({
                    height: 110,
                    modal: true,
                    resizable: false,
                    draggable: false,
                    close: function (event, ui) { $('body').find('#dialog').remove(); },
                    buttons:
                    {
                        'Ja': function () {
                            $('#dialog').dialog('close');
                            dialogConfirmed = true;
                            if (obj) obj.click();
                        },
                        'Nein': function () {
                            $('#dialog').dialog('close');
                        }
                    }
                });
                $(&quot;.ui-widget&quot;).css({ &quot;font-size&quot;: +18 + &quot;px&quot; });
            }
            return dialogConfirmed;
        }</pre>

在CS-File中的代码后面的Eventhandler抛出了这个弹出窗口:

<pre lang="cs">var script = &quot;ConfirmDialog(this, '&quot; + CommonRes.Attention +
                             "Wollen Sie wirklich beenden?");&quot;;
            ScriptManager.RegisterStartupScript(this, GetType(), Guid.NewGuid().ToString(), script, true);</pre>

我的下一个问题是:如何在cs-File中获取javascript函数被按下的返回值?

期待你的感谢!