输入标签中“名称”和“值”属性之间的确切区别

时间:2019-05-26 07:38:53

标签: html

我知道这可能是如此简单 但我无法理解输入标签(html)中名称和值属性之间的确切区别。 他们做什么?!

5 个答案:

答案 0 :(得分:1)

Value = value属性指定元素的值。

名称=名称仅用于发布表单数据。名称定义了表单提交后属性的名称。因此,如果您以后想要阅读此属性,则可以在POST或GET请求中的“名称”下找到它。而ID用于处理javascript或css中的字段或元素。

答案 1 :(得分:1)

value用于获取Javascript同一页面中输入的值

name用于引用input,以将值传递到另一页,例如,当您通过以下方式传递form时: 从<input value="some_value" name="input_name">PHP页面以GET / POST数据的形式,用$_POST['input_name']

访问输入

答案 2 :(得分:1)

价值:

value 属性指定元素的值。

对于不同的输入类型,value 属性的使用方式不同:

对于“按钮”、“重置”和“提交” - 定义按钮上的文本

对于“文本”、“密码”和“隐藏” - 它定义了输入字段的初始(默认)值

对于“checkbox”、“radio”、“image” - 它定义了与输入关联的值(这也是提交时发送的值)

注意: value 属性不能与 "==> input type="false"> 一起使用。


名称属性:

name 属性指定元素的名称。 name 属性用于引用JavaScript中的元素,或在表单提交后引用表单数据。

注意:只有具有 name 属性的表单元素才会在提交表单时传递它们的值。

以[名称和值]为例:

var languages = document.getElementsByName("language");
for (var lang of languages) {
  console.log(lang.value);
}
<!DOCTYPE html>
<html>
<head>
    <title> preferred language</title>
</head>
<body>

<p>Select your preferred language:</p>
 
<div>
  <input type="radio" id="english" name="language" value="english" checked>
  <label for="english">English</label>
 
  <input type="radio" id="hindi" name="language" value="hindi">
  <label for="hindi">Hindi</label>
 
  <input type="radio" id="spanish" name="language" value="spanish">
  <label for="spanish">Spanish</label>
</div>
</body>
</html>


在 Java 或 java-Servlets 中,您可以使用名称来获取/访问您想要的任何元素的值,例如:

<!DOCTYPE html>
<html>
<head>
    <title>Example for the name attr</title>
</head>
<body>


<form action="${pageContext.request.contextPath}/yourServletURL" method="post">
    <p>Normal text field.        
    <input type="text" name="name" /></p>

    <p>Secret text field.        
    <input type="password" name="pass" /></p>

    <p>Single-selection radiobuttons.        
    <input type="radio" name="gender" value="M" /> Male
    <input type="radio" name="gender" value="F" /> Female</p>

    <p>Single-selection checkbox.
    <input type="checkbox" name="agree" /> Agree?</p>

    <p>Multi-selection checkboxes.
    <input type="checkbox" name="role" value="USER" /> User
    <input type="checkbox" name="role" value="ADMIN" /> Admin</p>

    <p>Single-selection dropdown.
    <select name="countryCode">
        <option value="NL">Netherlands</option>
        <option value="US">United States</option>
    </select></p>

    <p>Multi-selection listbox.
    <select name="animalId" multiple="true" size="2">
        <option value="1">Cat</option>
        <option value="2">Dog</option>
    </select></p>

    <p>Text area.
    <textarea name="message"></textarea></p>

    <p>Submit button.
    <input type="submit" name="submit" value="submit" /></p>
</form>

</body>
</html>

enter image description here

----- 另一个例子 -----

<!DOCTYPE html>
<html>
<head>
    <title>hii</title>
</head>
<body>

<form action="MyServlet" method="post">
Fname:
<input type="text" name="fname" placeholder="type first name" />
<input type="submit" value="ok" />
</form>

</body>
</html>

================================================ ==================

这可以在您的 servlet/java 代码中的任何地方访问,

String fName = request.getParameter("fname");


答案 3 :(得分:0)

实际上,value是定义输入数据的属性,而name属性定义了可用于backend语言(如{{1 }},...

PHP应该是唯一的(在某些情况下,它可以是名称的数组,例如多个复选框用例),而name可以是动态的,并且对于所有输入都是可重复的。

答案 4 :(得分:0)

var languages = document.getElementsByClassName("language");
for (var lang of languages) {
  console.log(lang.value);
}
<!DOCTYPE html>
<html>
<head>
    <title> preferred language</title>
</head>
<body>

<p>Select your preferred language:</p>
 
<div>
  <input type="radio" id="english" class="language" value="english" checked>
  <label for="english">English</label>
 
  <input type="radio" id="hindi" class="language" value="hindi">
  <label for="hindi">Hindi</label>
 
  <input type="radio" id="spanish" class="language" value="spanish">
  <label for="spanish">Spanish</label>
</div>
</body>
</html>