MVC asp.net,从文本框获取数据到视图中的javascript函数

发布于 2024-12-04 05:02:14 字数 1304 浏览 1 评论 0原文

对此有何想法?

我在VS2010中使用MVC2。我认为 JavaScript 可以在谷歌地图上放置标记。我需要获取文本框的地址和距离,

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

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

是否有一个寄存器对象可以用来访问它?另外,使用 <%= Html 时遇到一些问题。

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

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

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

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

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

非常感谢

any thoughts on this?

I'm using MVC2 in VS2010. I have javascript in my view to put markers on a google map. I need to get the address and distance from text boxes,

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

to use as arguments in the function drawMap(address, distance); in my code.

Is there a register object I can use to access this? Also, having some issues using <%= Html. (..) %> in the <script type="text/javascript"><script> flags. I realise I should probably be implementing the MVC model here, and although use this to populate the textboxes on loading, can't pull the information from a textbox back out again on the POST back, to get values in the javascript function in the view.

Any suggestions greatly received! Thanks in advance.

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// further question re: DropDownListFor<>
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

Is there also a simple way of getting information from:

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

The SelectList for this is held in the Controller. Would I get which one had been selected from the controller in the POST? Or is there a way of determining which had been selected directly in the Javascript.

Many thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

命比纸薄 2024-12-11 05:02:14

要获取文本框值,只需使用 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) %>

更新到您的编辑

对于下拉列表,如果您将其放在表单标记中,则将被绑定到模型,所以你会在控制器中得到它。使用 javascript 时,您可以按照与文本框相同的方式访问该值。

To get the textbox value just use javascript

document.getElementById("address").value 

or, with jquery, use

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

If you instead use a model passed to the view (which I prefer if the user don't have to change the value in the textbox) you can put that in the script

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

To have this value persisted in the form post, you can use the Html.HiddenFor tag

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

Update to your edit

For the dropdownlist, if you put it in the form tag, it will be binded to the model, so you will get it in the controller. While with javascript you can access the value the same way yuo used for the textbox.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文