веб-форма с одним текстовым полем и двумя кнопками - PullRequest
0 голосов
/ 15 июля 2011

Как можно, чтобы две кнопки публиковали разные действия для одного и того же текстового поля?

, например: у меня есть две кнопки "Получить ученика (xls)" и "Получить ученика (pdf)", и я хочузапускать различные методы ActioResult.Я могу запустить только один метод запуска Excel, а именно: "/ Student / StudentExcel /" Второй метод запуска pdf: "/Student/StudentPdf/".

Вот мой скриншот дляФорма:

enter image description here

Вот мой код для просмотра страницы:

<%@ Page language="c#" AutoEventWireup="true" %>
<%@ Import NameSpace="System.IO" %>
<%@ Import NameSpace="System" %>
<%@ Import NameSpace="System.Data" %>
<%@ Import NameSpace="System.Web" %>
<%@ Import NameSpace="System.Text" %>
<%@ Import Namespace="STUDENT.Controllers" %>


<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Get Student File</title>
</head>
<body>

    <div>

    <form method="post" action="/Student/StudentExcel/">
    <label for="id">Student Number: </label>
    <input type="text" name="id" value="" />
    <br /><br />
    <input type="submit" value="GetStudent(xls)"/>  &nbsp;&nbsp
    <input type="submit" value="Get Student(pdf)" /> 
    </form>
    </div>

1 Ответ

1 голос
/ 15 июля 2011

Как сделать так, чтобы две кнопки публиковали разные действия для одного и того же текстового поля?

Вы не можете сделать это без JavaScript и простого HTML.

Позвольте мне предложить вам альтернативу: вы можете использовать две кнопки отправки с разными именами, которые подчиняются одному и тому же действию контроллера, и внутри этого действия контроллера вы можете получить имя кнопки отправки, по которой щелкнули, и действовать соответственно.

<form method="post" action="/Student/Dispatch/">
    <label for="id">Student Number: </label>
    <input type="text" name="id" value="" />
    <br /><br />

    <input type="submit" value="Get Student(xls)" name="xls" />  
    &nbsp;&nbsp
    <input type="submit" value="Get Student(pdf)" name="pdf" /> 
</form>

и внутри действия Отправка:

[HttpPost]
public ActionResult Dispatch(string pdf, string id)
{
    if (!string.IsNullOrEmpty(pdf))
    {
        // The GetPdf submit button was clicked
        return StudentPdf(id);
    } 

    // The GetXls submit button was clicked
    return StudentExcel(id);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...