Отправить значение TextBox без перезагрузки страницы - PullRequest
1 голос
/ 10 мая 2011

Я работаю над игрой TicTacToe, основанной на ASP.NET. Проблема с этим заключается в том, что: Игра ведется между двумя пользователями. Когда первый вводит «x» в TextBox, я хочу, чтобы «x» отображался на компьютере второго игрока без перезагрузки страницы. Я не знаю, поможет ли какой-нибудь код, но вот способ, которым я сделал это без перезагрузки (пользователь должен перезагрузить страницу вручную ... тупо):

protected void TopLeft_TextChanged(object sender, EventArgs e)
    {
        Application.Lock();
        GameBoard gameBoard = new GameBoard();
        gameBoard.board[0, 0] = char.Parse(this.TopLeft.Text);
        Application["TopLeft"] = gameBoard.board[0, 0];
        Application.UnLock();
    }

А затем, на странице предварительного рендера:

protected override void OnPreRender(EventArgs e)
    {
        base.OnPreRender(e);

        Application.Lock();
        if(Application["TopLeft"] != "0")
        {
            this.TopLeft.Text = Application["TopLeft"].ToString();
        }
        ...

И так далее ... Я был бы очень благодарен всем, кто может помочь!

Ответы [ 3 ]

3 голосов
/ 10 мая 2011

Вам нужно будет использовать AJAX , чтобы сделать это. Я рекомендую взглянуть на некоторые возможности AJAX, которые предлагает jQuery, но вы также можете взглянуть на набор инструментов AJAX от Microsoft.

Вот документация для AJAX в jQuery:

Я чувствую, что это намного «легче», чем то, что Microsoft предлагает «из коробки». Вы можете узнать больше о наборе инструментов Microsoft AJAX здесь:

2 голосов
/ 10 мая 2011

Вы спрашиваете о Частичном обновлении страницы .

Во-первых, вам нужно поместить клиент TextBox или другие элементы управления, которые вам нужно перезагрузить, в UpdatePanel .

Затем вам нужно вызвать UpdatePanel.Update , чтобы обновить эти элементы управления в любое время.

1 голос
/ 10 мая 2011

Проверьте AJAX.Это потребует от сценариев клиента отправки и обнаружения обновлений без отправки или обновления всей страницы.

Обратите внимание, однако, что это довольно сложная тема, а не просто небольшой фрагмент кода, который вы можете добавить.Я бы порекомендовал хорошую книгу по AJAX / JavaScript / jQuery.

...