2013-07-17 55 views
0
@{ 
    ViewBag.Title = "Index"; 
    Layout = "~/Views/Shared/_Layout.cshtml"; 

    Func<int,int,int> Sum = (a, b) => a + b; 
} 

//inside table 
<td>@Sum(3,4)</td> 

这会输出正确的答案,虽然我希望它在一个可以调整的文本框内输出(因此数据可以被回传)......我的尝试....如何在cshtml文本框中显示'sum'

<td><input id="Name" name="Name" type="text" value="">      
@Minus(@products.ReorderLevel, @products.StockLevel) 
</input> 
</td> 

这是说input元素是空的,不能有结束标记。

理想情况下,我想在文本框'+'%' - '后点击2个小按钮,这会在点击文本框时增加或减少文本框中的值。

回答

2

使用“值”属性设置一个文本输入字段

<td><input id="Name" name="Name" type="text" 
      value="@Minus(products.ReorderLevel, products.StockLevel)" /> 
</td> 

的价值对于改变你要去的值必须写一些JavaScript。考虑jquery一个简单的方法来查找和操作DOM对象,如您的文本框(在$("..") -stuff在下面的例子中

<script type="text/JavaScript" src="/path/to/your/jquery.version.js"></script> 
<script type="text/JavaScript"> 
    // Declare a function to increment a value 
    var incrementField = function() 
    { 
     var newValue = 1 + parseInt($("#name").val()); 
     $("#name").val(newValue); 
    }; 
    // Declare a function to decrement the value 
    var decrementField = function() 
    { 
     var newValue = parseInt($("#name").val()) - 1; 
     $("#name").val(newValue); 
    }; 
</script> 

,并从你的HTML调用它:

<button onclick="incrementField()">+</button> 
<button onclick="decrementField()">-</button> 

这是很基本的,未经测试和原型质量也好一种不同的方法是使用jQuery .click()挂钩的增加/减少逻辑

更新:。工作的jsfiddle这里的例子:http://jsfiddle.net/Am8Lp/2/

设置一个ID,以您的按钮,并使用以下的javascript:

// This creates a callback which called when the page is fully loaded 
$(document).ready(function(){ 

    // Set the initial value of the textbox 
    $("#name").val('0'); 

    // Create a click handler for your increment button 
    $("#increaseButton").click(function(){ 
     var newValue = 1 + parseInt($("#name").val()); 
     $("#name").val(newValue); 
    }); 
    // .. and your decrement button 
    $("#decreaseButton").click(function(){ 
     var newValue = parseInt($("#name").val()) - 1; 
     $("#name").val(newValue); 
    }); 
}); 

最后一个ID添加到您的按钮和删除旧单击处理

<button id="increaseButton">+</button> 
<button id="decreaseButton">-</button> 
+1

一旦函数里面,你可能不需要前缀为“@”的符号,例如“@Minus(products.ReorderLevel,products.StockLevel)” – davidsleeps

+0

多数民众赞成在此非常感谢......我是否使用某种形式的JS来增加或减少框中的总数当按加号或减号按钮 – John

+0

修正了错误@ davidsleeps指出,并增加了一种方法来处理递增和递减的东西 – havardhu