Asp.net 有没有办法通过按钮发送参数?
我有一个链接,我想把它变成一个按钮,链接通过一个参数,如下所示:Asp.net 有没有办法通过按钮发送参数?,asp.net,asp.net-mvc,Asp.net,Asp.net Mvc,我有一个链接,我想把它变成一个按钮,链接通过一个参数,如下所示: @Html.ActionLink("View", "Print", new { id = item.SalesContractId }) <input type="button" value="Print" id="btnFromIndexPrint" /> 现在,我想用一个带有此参数的按钮替换它{id=item.SalesContractId} 我的按钮如下所示: @Html.ActionLink("View",
@Html.ActionLink("View", "Print", new { id = item.SalesContractId })
<input type="button" value="Print" id="btnFromIndexPrint" />
现在,我想用一个带有此参数的按钮替换它{id=item.SalesContractId}
我的按钮如下所示:
@Html.ActionLink("View", "Print", new { id = item.SalesContractId })
<input type="button" value="Print" id="btnFromIndexPrint" />
有人能告诉我怎么做吗
这是我的页面的外观,您可以看到我正在努力实现的目标:
@model IEnumerable<Contract.Models.tbSalesContract>
<!DOCTYPE html>
<html>
<head>
<title>Index</title>
</head>
<body>
<p>
@Html.ActionLink("Create New", "Edit")
</p>
<table>
<tr>
<th>
Company
</th>
<th>
Trading As
</th>
<th>
Created
</th>
<th>
Updated
</th>
<th></th>
</tr>
@foreach (var item in Model) {
<tr>
<td>
@Html.DisplayFor(modelItem => item.CompanyName)
</td>
<td>
@Html.DisplayFor(modelItem => item.TradingAs)
</td>
<td>
@Html.DisplayFor(modelItem => item.C_date)
</td>
<td>
@Html.DisplayFor(modelItem => item.C_updateDate)
</td>
<td>
@* @Html.ActionLink("View", "Edit", new { id = item.SalesContractId }) *@
<input type="button" value="View" id="btnFromIndexView" />
<td>
@* Add Button to print only if contract state is finalized *@
@if (item.IsFinal)
{
@Html.ActionLink("Print", "Print", new { id = item.SalesContractId })
<input type="button" value="Print" id="btnFromIndexPrint" />
}
</td>
</td>
</tr>
}
</table>
</body>
</html>
@model IEnumerable
指数
@ActionLink(“新建”、“编辑”)
单位
交易身份
创建
更新
@foreach(模型中的var项目){
@DisplayFor(modelItem=>item.CompanyName)
@DisplayFor(modelItem=>item.TradingAs)
@DisplayFor(modeleItem=>item.C_日期)
@DisplayFor(modeleItem=>item.C_updateDate)
@*@Html.ActionLink(“查看”、“编辑”,新建{id=item.SalesContractId})*@
@*“添加”按钮仅在合同状态最终确定时打印*@
@如果(项目.IsFinal)
{
@ActionLink(“打印”、“打印”,新的{id=item.SalesContractId})
}
}
如果您查看ActionLink生成的源代码,您会发现这只是一个常规的超链接。id参数将附加到URL
因此,用按钮替换超链接将不一样
在ASP.NET MVC中,可以通过多种方式将数据发送到服务器。ActionLink使用的方法是将数据附加到URL。路由机制将这些映射到操作方法上的特定属性
另一种发送数据的方法是使用HTML表单。表单可以有一个提交按钮,然后将表单数据发送到服务器
在搜索操作方法的可能值时,ASP.NET MVC将检查以下来源:
如果你看一下ActionLink生成的源代码,你会发现这只是一个普通的超链接。id参数将附加到URL 因此,用按钮替换超链接将不一样 在ASP.NET MVC中,可以通过多种方式将数据发送到服务器。ActionLink使用的方法是将数据附加到URL。路由机制将这些映射到操作方法上的特定属性 另一种发送数据的方法是使用HTML表单。表单可以有一个提交按钮,然后将表单数据发送到服务器 在搜索操作方法的可能值时,ASP.NET MVC将检查以下来源:
为什么要使用按钮而不是链接?如果您担心外观和感觉,那么您可以应用一些CSS并使链接看起来像按钮 超链接()是为在网页之间形成连接而创建的链接。我建议您在您的案例中使用超链接而不是按钮。如果您想使用javascript执行一些客户端操作,按钮(而不是提交)是很好的
如果您仍然想使用按钮,那么您必须依靠一些javascript来调用控制器操作。为什么要使用按钮而不是链接?如果您担心外观和感觉,那么您可以应用一些CSS并使链接看起来像按钮 超链接()是为在网页之间形成连接而创建的链接。我建议您在您的案例中使用超链接而不是按钮。如果您想使用javascript执行一些客户端操作,按钮(而不是提交)是很好的
如果您仍要使用按钮,则必须依靠一些javascript来调用控制器操作。您是在尝试检测服务器上的id,还是通过一些客户端脚本?您是在尝试检测服务器上的id,或者通过客户端脚本?所以你不能通过按钮发送参数?如果你看一下我的源代码,你能以一种可能的方式重定向我以实现我的目标吗?@Pomster如果你不清楚按钮和超链接之间的区别,那么你真的需要对此做一些研究。使用Html.ActionLink,您不会向任何东西“传递数据”。浏览器正在输出一个超链接,该超链接将浏览器重定向到另一个页面(路由)。按钮根本不像超链接,所以你的问题毫无意义。你可以添加javascript,当你点击按钮时会重定向,但这不是一回事。所以你不能通过按钮发送参数?如果你看一下我的源代码,你能以一种可能的方式重定向我的目标吗?@Pomster如果你不清楚按钮和超链接之间的区别,那么你真的需要做一些研究。使用Html.ActionLink,您不会将数据“传递”给