使用 angularjs 选择框提交表单

Posted

技术标签:

【中文标题】使用 angularjs 选择框提交表单【英文标题】:Submitting form with angularjs select box 【发布时间】:2017-08-03 14:11:43 【问题描述】:

我对 angularjs 非常陌生,并且已将常规 html <select> 框替换为 Angular 模态选择框。

选择框填充了 $http ajax 请求并加载数据正常,但表单提交失败。

我的原始代码:

<body>
<form id="form-filename">
<div align="center"><select name="filename" id="filename" class="browser-default"></select></div>
<input type="button" id="submit-filename" value="Apply"><br>
</form></body>

我的带有角度选择框的版本:

<body ng-app="httptest" ng-controller="getjson">
 <form id="form-filename">
 <button class="semi-transparent-button"  name="filename" modal-select="" ng-model="someModel" options="data" modal-title="Select Location">  Select File
                <div class="option">
                  option
                </div></form>

我不确定需要修改什么才能让选择框提交表单并更新文件名值。

【问题讨论】:

在您的情况下“失败”是什么意思? 查看AngularJS Developer Guide - Forms并使用ng-submit directive。 【参考方案1】:

这是您以 Angular 方式提交表单的方式:

查看:

<form novalidate ng-submit="submit(data)">
  <select name="selectElem" ng-model="data.selectedItem" ng-options="item as item for item in options">
    <option value="" selected disabled>Select Option</option>
  </select>
  <button type="submit">Submit</button>
</form>

控制器:

$scope.options = [
  'A',
  'B',
  'C',
  'D'
];

$scope.submit = function(data) 
  // do stuff with your data
  console.log(data);
;

Plunker Demo

【讨论】:

以上是关于使用 angularjs 选择框提交表单的主要内容,如果未能解决你的问题,请参考以下文章

angularjs表单提交 怎么接受数据

表单没有“提交”方法(angularjs 表单自动填充问题解决方法)

使用 AJAX 动态填充的选择框不会在表单提交时发布

AngularJS 等待提交表单(ng-submit)

如何使用提交按钮在angularJS中提交表单的所有详细信息

flask 表单提交问题,如何实现点击执行执行按钮,执行下拉框选择的部分