我陷入困境,我必须获取执行操作的所有输入元素。
例如: 有一个容器,其中可以有n个输入元素 输入类型文本/数字/日期 单选按钮 等(动态渲染)
并且在同一个容器中有一个名为submit的按钮。 当我点击提交
我该怎么做?
因为我正在动态渲染,所以我无法设置范围,以便我可以使用范围进行访问。
答案 0 :(得分:2)
如果您使用jquery,您可以按照以下方式执行:
var $parent = $(button).parent();
var $inputs = $parent.find("input");
如果您不使用jquery,可以使用以下内容:
var parent = buttonElement.parentElement;
var inputs = parent.getElementsByTagName("input");
答案 1 :(得分:1)
<div>
<input type="text" id="txtName" value="Aslam"/>
<input type="radio" value="Select" />
<input type="button" id="btnClick" value="Click Me!"/>
</div>
<script>
$("#btnClick").on('click', function () {
var parent = $(this).parent();
var childrens = parent.children("input");
childrens.each(function () {
switch (this.type) {
case 'text':
alert('Put text box logic');
break;
case 'radio':
alert('Put radio box logic');
break;
//Put other control
default:
}
})
});
</script>
答案 2 :(得分:1)
首先设置ng-form并通过ng-model访问......这是这样做的简单方法......
<form ng-form="myparent">
<input type="text" ng-model="myparent.firstname"/>
<input type="text" ng-model="myparent.lastname"/>
... Etc
</form>