2

WebサイトにC#で簡単な入力ボックスを作成する必要があります。そのようなコードで呼び出すと、ポップアップするはずです

String input = InputBox("Name the file"); 

次に、ユーザーがコードの後半に入力する使用文字列が必要です。.netアプリケーションでは、非常に簡単に実行できますが、Webアプリケーションで機能させるにはどうすればよいですか。ajaxで可能になるはずですが、そのような(一見)些細なことではかなり複雑に思えます。すぐに使用できるライブラリやフレームワークはありますか?

前もって感謝します

4

6 に答える 6

4

あなたが探している振る舞いは、ユーザーが値を入力して[OK]をクリックするためのテキストボックスを備えたポップアップウィンドウを表示することであるように私には聞こえます。そうですか?

あなたはそれがウェブアプリでより複雑であると言っているのは正しいです。Windowsアプリでは、C#コードを実行するたびに、何が起こってもその瞬間に発生します。それはかなり簡単です。ただし、Webアプリでは、ページがブラウザーでレンダリングされる前に、すべてのC#が実行されます。したがって、WebフォームのC#は実際にはウィンドウをポップアップできません。

ポップアップを表示するには、JavaScriptを使用してポップアップを表示する必要があります。ポップアップ内のテキストボックスは<asp:Textbox>コントロールである必要があります。.NETコントロールに最も慣れている場合は、AjaxControlToolkit使用できます。jQueryに慣れている場合は、jQueryUIを確認する必要があります。

于 2011-05-12T18:02:42.373 に答える
1

Webフォームを使用していると思います。

最も簡単なことは、1つの入力ボックス(<asp:textbox runat="server" id="inputfield" />)でWebフォームを作成することです。onclickイベントを含むボタンを追加します(<asp:button runat="server" id="button" onclick="OnClick" />。onclickイベントハンドラーでは、値を使用して何かを実行します。

protected void OnClick(object sender, EventArgs args){
  string input = inputfield.Text;
  // do something
}
于 2011-05-12T17:57:54.667 に答える
1

そのようなコードで呼び出すと、ポップアップするはずです

そして、これはいつですか?Web開発とアプリケーション開発の切り離された性質には根本的な違いがあることに注意してください。サーバー側のC#コードはすべて、Webページがブラウザーでレンダリングされる前に実行が完了しています。では、いつこのコードを呼び出すのですか?また、どのようにデータをサーバーに戻しますか?フォーム投稿?AJAX呼び出し?

「ポップアップ」してAJAXでポストバックしたい場合は、実際のポップアップとしてjQueryUIダイアログをお勧めします。次に、そのcloseイベントで、サーバーにAJAX呼び出しを行ってデータを投稿できます。

于 2011-05-12T17:59:57.520 に答える
1

ユーザー入力を取得するPOPUPの簡単なソリューションを探している場合は、JQueryのダイアログウィジェットを確認することをお勧めします。特にモーダルフォームについては、次の情報へのリンクを参照してください:http: //jqueryui.com/demos/dialog/#modal-form

于 2011-05-12T18:02:59.077 に答える
0

ASP.NETには、これを実行するTextBoxコントロールがあります。runat = "server"のすべてのアイテムには、サーバー側のコードからアクセスできます。

于 2011-05-12T17:56:16.383 に答える
0
  public class InputBox
        {
            public static DialogResult Show(string title, string promptText, ref string value)
            {
                return Show(title, promptText, ref value, null);
            }




//Fuction


            public static DialogResult Show(string title, string promptText, ref string value,
                                            InputBoxValidation validation)
            {
                Form form = new Form();
                Label label = new Label();
                TextBox textBox = new TextBox();
                Button buttonOk = new Button();
                Button buttonCancel = new Button();

                form.Text = title;
                label.Text = promptText;
                textBox.Text = value;

                buttonOk.Text = "OK";
                buttonCancel.Text = "Cancel";
                buttonOk.DialogResult = DialogResult.OK;
                buttonCancel.DialogResult = DialogResult.Cancel;

                label.SetBounds(9, 20, 372, 13);
                textBox.SetBounds(12, 36, 372, 20);
                buttonOk.SetBounds(228, 72, 75, 23);
                buttonCancel.SetBounds(309, 72, 75, 23);

                label.AutoSize = true;
                textBox.Anchor = textBox.Anchor | AnchorStyles.Right;
                buttonOk.Anchor = AnchorStyles.Bottom | AnchorStyles.Right;
                buttonCancel.Anchor = AnchorStyles.Bottom | AnchorStyles.Right;

                form.ClientSize = new Size(396, 107);
                form.Controls.AddRange(new Control[] { label, textBox, buttonOk, buttonCancel });
                form.ClientSize = new Size(Math.Max(300, label.Right + 10), form.ClientSize.Height);
                form.FormBorderStyle = FormBorderStyle.FixedDialog;
                form.StartPosition = FormStartPosition.CenterScreen;
                form.MinimizeBox = false;
                form.MaximizeBox = false;
                form.AcceptButton = buttonOk;
                form.CancelButton = buttonCancel;
                if (validation != null)
                {
                    form.FormClosing += delegate(object sender, FormClosingEventArgs e)
                    {
                        if (form.DialogResult == DialogResult.OK)
                        {
                            string errorText = validation(textBox.Text);
                            if (e.Cancel = (errorText != ""))
                            {
                                MessageBox.Show(form, errorText, "Validation Error",
                                                MessageBoxButtons.OK, MessageBoxIcon.Error);
                                textBox.Focus();
                            }
                        }
                    };
                }
                DialogResult dialogResult = form.ShowDialog();
                value = textBox.Text;
                return dialogResult;
            }
        }
        public delegate string InputBoxValidation(string errorMessage);





















private void button_updations_Click(object sender, EventArgs e)
        {

            InputBoxValidation validation = delegate(string val)
            {
                if (val == "")
                    return "Value cannot be empty.";
                if (!(new Regex(@"^[a-zA-Z0-9_\-\.]+@[a-zA-Z0-9_\-\.]+\.[a-zA-Z]{2,}$")).IsMatch(val))
                    return "Email address is not valid.";
                return "";
            };

            string value = "";
            if (InputBox.Show("Enter your email address", "Email address:", ref value, validation) == DialogResult.OK)
            {

                if (value == "thazime7@gmail.com")
                {
                    dataGridView1.Visible = true;
                    button_delete.Visible = true;
                    button1.Visible = true;
                    button_show.Visible = true;
                    label6.Visible = true;
                    label4.Visible = true;
                    label5.Visible = true;
                    textBox_uemail.Visible = true;
                    textBox_uname.Visible = true;
                    textBox_upassword.Visible = true;
                    textBox_delete.Visible = true;
                    button_deleteTable.Visible = true;

                    button_updatep.Visible = true;
                    textBox_updateall.Visible = true;
                }
                MessageBox.Show(value);
            }
            else
            {
                MessageBox.Show("You are not authenticated");





            }
        }
于 2015-03-20T07:22:33.077 に答える