【问题标题】:How to get value entered in a text box from a view如何从视图中获取在文本框中输入的值
【发布时间】:2012-07-09 20:41:29
【问题描述】:

我的 MVC 视图有一个带有可编辑字段的表格,如下所示。

  <td>
     <div class="view">
         <%= Model.device_Url%>
         </div>
         <div class="edit">
         <input type="text" name="deviceurl" id = "deviceurl" value="<%= Model.device_Url%>" />   

      </div>
 </td>

用户可以选择编辑然后保存在上述文本框字段中输入的值。

 <td class="options">
    <div class="view">
        <a href="#" class="switchToEdit">Edit</a>
    </div>
     <div class="edit">
      <a href="/Live/Update?streamurl=deviceurl class="save refresh">Save</a>
      <a href="#" class="cancel">Cancel</a>  
        </div>
    </td>

我想调用我的控制器 /Live/Update 并传入 URL 文本框中更改的值。

如何获取文本框中输入的值。

我需要java脚本来做这个吗?

【问题讨论】:

  • 你能用这个表格吗?

标签: c# asp.net-mvc


【解决方案1】:

除非您想使用传统的提交方式,否则您将需要 javascript。

最简单的方法是使用 jQuery 并通过类似下面的代码行获取值:

$("#deviceurl").val()

然后我会进行 ajax 调用以将值提交回控制器的操作。您可能还想使用 Url.Action 帮助器来构建 Url:

$.ajax(
        url: '<%=Url.Action("Update")%>,
        data : {deviceUrl :  $("#deviceurl").val()},
        success : function (result){
           // handle logic when the update succeeds
        }
      );

希望对你有帮助

【讨论】:

    【解决方案2】:

    我的建议是让你使用 Html.ActionLink 而不是使用这个 Save

    like this : 
    <%=Html.ActionLink("Save", 
                    "Live",  // <-- Controller Name.
                    "Update",   // <-- ActionMethod
                    new { streamurl = deviceurl },
                    new { @class = "save refresh" }
                    )
    %>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-02-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-05-04
      • 2022-08-12
      • 1970-01-01
      相关资源
      最近更新 更多