Javascript 选择特定表单的特定输入字段名称
我有一些像这样的html代码Javascript 选择特定表单的特定输入字段名称,javascript,jquery,forms,Javascript,Jquery,Forms,我有一些像这样的html代码 <form name="first"><input name="firstText" type="text" value="General" /> <input name="secondText" type="text" value="General" /> <input name="ThirdText" type="text" value="General" /> <input name="FourthT
<form name="first"><input name="firstText" type="text" value="General" />
<input name="secondText" type="text" value="General" />
<input name="ThirdText" type="text" value="General" />
<input name="FourthText" type="text" value="General" />
<input name="FifthText" type="text" value="General" />
</form>
<form name="second"><input name="firstText" type="text" value="General" />
<input name="secondText" type="text" value="General" />
<input name="ThirdText" type="text" value="General" />
<input name="FourthText" type="text" value="General" />
<input name="FifthText" type="text" value="General" />
</form>
我想使用jquery或javascript选择形式为“second”的“secondText”,并想使用jquery更改其值。使用jquery:
var元素=$([name='second']input[name='secondText']);
使用vanilla JS:
var element=document.querySelector(“form[name='second']input[name='secondText']);
更改值:
element.val(value)
或element.value=value
,具体取决于您使用的内容。您可以这样做:
jQuery
$("form[name='second'] input[name='secondText']").val("yourNewValue");
演示:
或:
本机Javascript
旧浏览器:
var myInput = [];
myInput = document.getElementsByTagName("input");
for (var i = 0; i < myInput.length; i++) {
if (myInput[i].parentNode.name === "second" &&
myInput[i].name === "secondText") {
myInput[i].value = "yourNewValue";
}
}
document.querySelector("form[name='second'] input[name='secondText']").value = "yourNewValue";
演示:试试看
$("form[name='second'] input[name='secondText']").val("ENTER-YOUR-VALUE");
你也可以试试这句话:
$('input[name="elements[174ec04d-a9e1-406a-8b17-36fadf79afdf][0][value]"').mask("999.999.999-99",{placeholder:" "});
对于纯JS而言:
document.querySelector('form[name=particular-form] input[name=particular-input]')
更新:
此选择器将在名为“特定表单”的表单中返回名为“特定输入”的输入(如果存在),否则返回null
选择器过滤器“form[name=Special form]”将查找名称等于“Special form”的所有表格:
选择器过滤器“input[name=special input]”将查找名称等于“special input”的所有输入元素:
将两个过滤器与空白相结合,我的意思是:
“表单[名称=特定名称]输入[名称=特定输入]”
我们要求querySelector()
:嘿,在名称等于“特定形式”的所有形式中,查找名称等于“特定形式”的所有输入
考虑:
document.querySelector('form[name=special form]input[name=special input]')。style.background=“#f00”
此代码将仅更改第二个输入的背景色,无论第三个输入是否具有相同的名称。这是因为我们只选择嵌套在“特定表单”表单中的名为“特定输入”的输入
我希望现在更清楚了
)()
顺便说一句,很遗憾,我没有找到关于querySelector过滤器的好的/简单的文档,如果您知道任何参考资料,请在这里发布。两种形式的Add按钮。在按钮
上,单击使用jquery的closest()函数查找最近的表单。然后使用find()
(jquery函数)获取所有输入值closest()
在dom树中向上搜索,而find()
在dom树中向下搜索
另一种方法是使用同级()
(jquery函数)。在按钮上单击获取同级输入字段值。请解释您的答案。
document.querySelector('form[name=particular-form] input[name=particular-input]')