【问题标题】:MVC asp.net, get data from textbox into javascript function in viewMVC asp.net,从文本框中获取数据到视图中的javascript函数
【发布时间】:2011-09-10 14:56:49
【问题描述】:

对此有什么想法吗?

我在 VS2010 中使用 MVC2。我有 javascript 在我的视图中将标记放在谷歌地图上。我需要从文本框中获取地址和距离,

<%= Html.TextBox("address") %> <%= Html.TextBox("distance") %>

在我的代码中用作函数drawMap(address, distance); 中的参数。

有没有我可以用来访问它的注册对象?此外,在 <script type="text/javascript"><script> 标志中使用 <%= Html. (..) %> 时遇到一些问题。我意识到我可能应该在这里实现 MVC 模型,虽然在加载时使用它来填充文本框,但不能在 POST 回来时再次从文本框中拉回信息,以获取视图中 javascript 函数中的值.

收到任何建议!提前致谢。

/////////////////////////////////////// ///////////////////////////////////////// ///////////////////////////////////////// //////////////// // 进一步的问题:DropDownListFor
///////////////////////////////////////// ///////////////////////////////////////// ///////////////////////////////////////// /////////

是否还有一种简单的获取信息的方法:

<%: Html.DropDownListFor(model => model.SavedAddress1, ViewData["StartLoc"] as SelectList) %>

为此的 SelectList 保存在 Controller 中。我会在 POST 中从控制器中选择哪一个吗?或者有没有办法确定在 Javascript 中直接选择了哪个。

非常感谢

【问题讨论】:

  • 请贴一些代码..从视图,从js

标签: javascript asp.net-mvc asp.net-mvc-2 html-helper


【解决方案1】:

要获取文本框的值,只需使用 javascript

document.getElementById("address").value 

或者,对于 jquery,使用

$("#address").val();

如果您改为使用传递给视图的模型(如果用户不必更改文本框中的值,我更喜欢这样做),您可以将其放入脚本中

<script type="text/javascript">
drawmap('<%= Model.Address %>', '<%= Model.Destination%>');
<script>

要在表单帖子中保留此值,您可以使用Html.HiddenFor 标签

 <%: Html.HiddenFor(model => model.Address) %>

更新您的编辑

对于下拉列表,如果你把它放在form标签中,它会绑定到模型上,所以你会在控制器中得到它。在使用 javascript 时,您可以像 yuo 用于文本框一样访问该值。

【讨论】:

  • jquery部分应该是$("#address").val();
  • 谢谢 Iridio,getElement() 太棒了。
猜你喜欢
  • 1970-01-01
  • 2023-03-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-03-03
  • 1970-01-01
  • 2022-01-15
  • 2017-01-13
相关资源
最近更新 更多