我创建了一个包含5列的简单表。最后一列是按钮。我需要在按钮单击时获取第一个列单元格值并将此值移至操作/控制器。我想在不使用javascript的情况下实现这一点。
所以有没有现成的方法在asp.net mvc 4中这样做,因为我在asp.net webforms中很多次很容易,这是我的代码如下: -
<?php
$username = $_POST['username'];
$password = $_POST['password'];
echo $username;
echo $password;
$connection = mysqli_connect("localhost", "root", "", "register");
if (!$connection) {
die("can not connect to database");
}
$sql = "SELECT * FROM signupinfo WHERE username= '" . $username . "' AND password ='" . $password . "' ";
$result = mysqli_query($connection, $sql);
if (!$result) {
die(mysqli_error($connection));
}
if (mysqli_num_rows($result) == 1) {
echo "login successfull";
} else {
echo "sorry incorrect password or username";
}
答案 0 :(得分:1)
如果您不想使用javascript,可以进行表单提交。
将您的每一行包裹在表单标记内。将第一个单元格的值设置为隐藏的输入字段。当用户点击提交按钮时,它将提交该值。
<table>
@foreach (var row in Model.Rows)
{
using (Html.BeginForm("Print","Home"))
{
<tr style="height: 22px; border-bottom: 1px solid gray">
<td>@row["instr_no"] <input type="hidden" value="@row["instr_no"]"
name="instrNo" /></td>
<td>@row["benef_name"]</td>
<td><input type="submit" /></td>
</tr>
}
}
</table>
假设您的HomeController中有一个名为Print
的操作方法,该方法接受名为instrNo
的参数
public ActionResult Print(string instrNo)
{
// to do : Return something
}
答案 1 :(得分:1)
您可以使用
在链接中添加属性的值作为路由值@Html.ActionLink("Print", "Print", "Home", new { instr_no = row["instr_no"] }, null)