【发布时间】:2014-05-14 00:50:54
【问题描述】:
我正在尝试将 TextBoxFor 作为表单中的切换按钮,将类型更改为按钮如下:
@using (Html.BeginForm("MyForm", "Home"))
{
@Html.TextBoxFor(model => model.BothProjections1, new {@type = "button", @onclick = "changeButton('BothProjections1')",@style = "background-color: #FFFFFF; font-size: 10px; padding: 1px; width: 18px;" })
}
使用下面的javaScript来改变值和背景颜色:
function changeButton(id) {
var button = document.getElementById(id);
if (button.value == "") {
button.value = "1";
button.style.backgroundColor = 'red';
button.style.color = 'Black';
}
else if (button.value == "1") {
button.value = "2";
button.style.backgroundColor = 'cyan';
button.style.color = 'Black';
}
else if (button.value == "2") {
button.value = "3";
button.style.backgroundColor = 'yellow';
button.style.color = 'Black';
}
else if (button.value == "3") {
button.value = "";
button.style.backgroundColor = 'white';
button.style.color = 'white';
}
}
屏幕上的值会发生变化,但是当我在控制器中通过检查表单的值来调试它时它是空的!
[HttpPost]
public ActionResult MyForm (MyModel form)
如果我删除 Type="button" 并手动输入值,一切正常,但这不是我想要做的。您的建议将不胜感激。
【问题讨论】:
标签: javascript asp.net-mvc-4 textbox razor-2