Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/409.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 选择特定表单的特定输入字段名称_Javascript_Jquery_Forms - Fatal编程技术网

Javascript 选择特定表单的特定输入字段名称

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

我有一些像这样的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="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]')