如何计算数字的平方?

时间:2015-07-28 11:04:50

标签: c# asp.net-mvc

我有两个文本框。一个文本框用于输入,另一个用于输出。当按钮点击在第一个文本框中输入数字时,我想通过单击方形按钮在第二个文本框中找到该数字的正方形。但我无法得到理想的结果。单击“方形”按钮时,第二个文本框中不显示任何内容。 这是代码段:

@Html.TextBoxFor(model => model.textBox, new {  @readonly = "readonly" })
<br/>
@Html.TextBoxFor(model => model.textBox1, new {  @readonly = "readonly" })
<input name="button" type="submit" id="btntwo" value="2" />

<input name="button"  type="submit" id="btnthree" value="3" />

<input name="button" type="submit" id="btnfour" value="4" /> 
<input name="button" type="submit" id="btnSqr" value="Sqr" />

以下是控制器的代码段:

if (button == "Sqr")
{
    model.value1 = model.textBox;
    model.textBox1 = (float.Parse(model.value1) * float.Parse(model.value1)).ToString();
}

注意:我只提供了解决问题所需的代码。

3 个答案:

答案 0 :(得分:4)

以下是我对您正在做的事情的假设“如果您使用服务器端解决方案”

public ActionResult FindSquare()
    {
       SquareModel model = new SquareModel(); // model contains textbox, textbox1
        return View(model);
    }

当您在按钮上提交表单时单击

public ActionResult FindSquare(SquareModel model, FormCollection collection)
 {
     if(!string.IsNullOrEmpty(collection["button"]) && collection["button"].ToString() == "Sqr")
     {
         double value = Convert.ToDouble(model.textBox);
         var result = value * value;
         model.textBox1 = Convert.ToString(result);
         return View(model);
     }
 }

编辑: 从您的视图页面中删除removeonly。

答案 1 :(得分:1)

  

使用客户端脚本轻松完成

$('#btntwo').click(function (e) {
var num = parseInt($('#textBox').val());
$('#textBox1').val(num*num);
 return false;
});
  

如果要继续在服务器端,则必须删除@readonly =
  “只读”。

答案 2 :(得分:0)

我怀疑你遇到的问题与你有两个文本框(textBox和textBox1)有关,而且两者都是只读的。没有什么可以改变,所以也许控制器根本没有发射?

我还担心你的控制器实现没有正确接线。您提供的代码太少,无法验证主要故障点的回发处理不是原因。