2013-05-08 80 views
0

我想在dropDown更改上打印一些文本。然后提交将标签文本保存到数据库。目前打印给标签的值工作正常,但在提交时我没有收到标签文本。在MVC中获取标签值2

$(document).ready(function() { 
$('#StockID').change(function() { 

// ajax call 
function successFunc(data, status) { 
$("#lblTotal").text("Stock Value: " + data.Result); 
} 

} 
}) 
}); 

<div class="editor-field"> 
       <%: Html.DropDownListFor(x => x.StockID, new SelectList(Model.lstStock, "StockID", "Description"), "-- Please Select a Stock --")%> 
       <%: Html.ValidationMessageFor(model => model.StockID)%> 
      </div> 

      <div id="clslbl"> 
      <br /> 
       <label id="lblTotal"></label> 

      </div> 

控制器:

if (ModelState.IsValid) 
        {// TODO: Add insert logic here 

         string a = Request.Form["lblTotal"]; // here i'm not getting the label text 

         return RedirectToAction("Index"); 
        } 

回答

1

Labels不回发到服务器同样是这样,如果你使用Html.DisplayFor(...).当你在一个隐藏字段改变下拉值保存为好。您将可以在服务器上作为Request的一部分访问它。只有input字段被回发到服务器。所以<input type="hidden" .../>应该为你做这项工作。