Π Π°Π·Π½ΠΎΠ΅

Input type Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠΉ список: Π’Π΅Π³ | htmlbook.ru

14.09.2019

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅

Π’Π΅Π³ | htmlbook.ru

Internet ExplorerChromeOperaSafariFirefoxAndroidiOS
4.0+1.0+4.0+1.0+1.0+1.0+1.0+

БпСцификация

HTML:3.24.015.0XHTML:1.01.1

ОписаниС

Π’Π΅Π³ <option> опрСдСляСт ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΡƒΠ½ΠΊΡ‚Ρ‹ списка, создаваСмого с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° <select>. Π¨ΠΈΡ€ΠΈΠ½Π° списка опрСдСляСтся самым ΡˆΠΈΡ€ΠΎΠΊΠΈΠΌ тСкстом, ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΌ Π² Ρ‚Π΅Π³Π΅ <option>, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ стилСй. Если планируСтся ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ списка Π½Π° сСрвСр, Ρ‚ΠΎ трСбуСтся ΠΏΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ элСмСнт <select> Π²Π½ΡƒΡ‚Ρ€ΡŒ Ρ„ΠΎΡ€ΠΌΡ‹. Π­Ρ‚ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ, ΠΊΠΎΠ³Π΄Π° ΠΊ Π΄Π°Π½Π½Ρ‹ΠΌ списка ΠΈΠ΄Π΅Ρ‚ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ Ρ‡Π΅Ρ€Π΅Π· скрипты.

Бинтаксис

<select>
  <option>ΠŸΡƒΠ½ΠΊΡ‚ 1</option>
  <option>ΠŸΡƒΠ½ΠΊΡ‚ 2</option>
</select>

Атрибуты

disabled
Π—Π°Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ для доступа элСмСнт списка.
label
Π£ΠΊΠ°Π·Π°Π½ΠΈΠ΅ ΠΌΠ΅Ρ‚ΠΊΠΈ ΠΏΡƒΠ½ΠΊΡ‚Π° списка.
selected
Π—Π°Ρ€Π°Π½Π΅Π΅ устанавливаСт ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΉ ΠΏΡƒΠ½ΠΊΡ‚ списка Π²Ρ‹Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌ.
value
Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΡƒΠ½ΠΊΡ‚Π° списка, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΏΡ€Π°Π²Π»Π΅Π½ΠΎ Π½Π° сСрвСр ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Π½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ скриптов.

Π’Π°ΠΊΠΆΠ΅ для этого Ρ‚Π΅Π³Π° доступны ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹Π΅ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Ρ‹ ΠΈ события.

Π—Π°ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉ Ρ‚Π΅Π³

НС обязатСлСн.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

HTML5IECrOpSaFx

<!DOCTYPE HTML>
<html>
 <head>
  <meta charset="utf-8">
  <title>Π’Π΅Π³ OPTION</title>
 </head>
 <body> 

  <form action="option1.php">
   <p><select size="3" name="hero">
    <option disabled>Π’Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ гСроя</option>
    <option value="t1" selected>Π§Π΅Π±ΡƒΡ€Π°ΡˆΠΊΠ°</option>
    <option value="t2">ΠšΡ€ΠΎΠΊΠΎΠ΄ΠΈΠ» Π“Π΅Π½Π°</option>
    <option value="t3">Шапокляк</option>
    <option value="t4">ΠšΡ€Ρ‹ΡΠ° Лариса</option>
   </select></p>
   <p><input type="submit" value="ΠžΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ"></p>
  </form>

 </body>
</html>

Как ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ тСкст Ρ‚ΠΈΠΏΠ° input ΠΏΠΎΡ…ΠΎΠΆΠΈΠΌ Π½Π° Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠΉ список select?



Π•ΡΡ‚ΡŒ Π»ΠΈ ΠΊΠ°ΠΊΠΎΠΉ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ способ, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ я ΠΌΠΎΠ³Ρƒ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ элСмСнт input type=text ΠΏΠΎΡ…ΠΎΠΆΠΈΠΌ Π½Π° Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠΉ список? Π’ настоящСС врСмя Ρƒ мСня Π΅ΡΡ‚ΡŒ тСкстовоС ΠΏΠΎΠ»Π΅, ΠΏΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ я ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ jquery ΠΈ div. Π― Ρ…ΠΎΡ‡Ρƒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π² тСкстовом ΠΏΠΎΠ»Π΅ Π±Ρ‹Π» Π·Π½Π°Ρ‡ΠΎΠΊ Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π³ΠΎ списка, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ выглядСл Ρ‚ΠΎΡ‡Π½ΠΎ Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠΉ список.

ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Ρ€Π°Π·Π½Ρ‹Π΅ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Ρ‹ ΠΈΠΌΠ΅ΡŽΡ‚ Ρ€Π°Π·Π½Ρ‹Π΅ Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠ΅ Π·Π½Π°Ρ‡ΠΊΠΈ, Π΅ΡΡ‚ΡŒ Π»ΠΈ способ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ΄ΠΈΠ½ ΠΈ Ρ‚ΠΎΡ‚ ΠΆΠ΅ Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠΉ Π·Π½Π°Ρ‡ΠΎΠΊ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ прСдоставляСт Π±Ρ€Π°ΡƒΠ·Π΅Ρ€?

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: Π― Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ css ΠΊ значСниям ΠΎΠΏΡ†ΠΈΠΉ, ΠΏΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒ ΠΈΡ…, Ρ‡Ρ‚ΠΎ я Π½Π΅ ΠΌΠΎΠ³Ρƒ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠ³ΠΎ Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π³ΠΎ списка. Π’ΠΎΡ‚ ΠΏΠΎΡ‡Π΅ΠΌΡƒ я использовал div ΠΈ jquery для отобраТСния Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ².

jquery html css input
ΠŸΠΎΠ΄Π΅Π»ΠΈΡ‚ΡŒΡΡ Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ Sachin B. R. Β  Β  26 мая 2015 Π² 06:35

2 ΠΎΡ‚Π²Π΅Ρ‚Π°


  • Π‘Π΄Π΅Π»Π°Ρ‚ΡŒ Brackets.io ΠΏΠΎΡ…ΠΎΠΆΠΈΠΌ Π½Π° Π²ΠΎΠ·Π²Ρ‹ΡˆΠ΅Π½Π½Ρ‹ΠΉ тСкст?

    Π― ΠΏΡ€ΠΎΠ±ΡƒΡŽ Brackets.io, Π½ΠΎ ΠΎΠ½ выглядит Π³ΠΎΡ€Π°Π·Π΄ΠΎ Ρ…ΡƒΠΆΠ΅, Ρ‡Π΅ΠΌ Sublime Π½Π° ΠΌΠΎΠ΅ΠΌ экранС (Apple 27). Π¨Ρ€ΠΈΡ„Ρ‚/тСкст (ΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Π» ΠΌΠ½ΠΎΠ³ΠΎ Ρ€Π°Π·Π½Ρ‹Ρ…) Π½Π΅ Ρ‚Π°ΠΊΠΎΠΉ Ρ€Π΅Π·ΠΊΠΈΠΉ ΠΈ fat, ΠΊΠ°ΠΊ Π² Sublime Text.

    Π•ΡΡ‚ΡŒ Π»ΠΈ способ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π΅Π³ΠΎ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΡ…ΠΎΠΆΠΈΠΌ Π½Π° Π²ΠΎΠ·Π²Ρ‹ΡˆΠ΅Π½Π½ΠΎΠ΅? (Π˜Π½Ρ‚Π΅Ρ€Π΅ΡΠ½ΠΎ, ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹ Π»ΠΈ скобки для дисплССв retina (?), Π° Π½Π΅ для…

  • Как ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΏΠΎΠ»Π΅ Π²Π²ΠΎΠ΄Π° ΠΏΠΎΡ…ΠΎΠΆΠΈΠΌ Π½Π° ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ тСкст

    Π’ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ ASP.NET Ρƒ мСня Π΅ΡΡ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ элСмСнтов управлСния textbox, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ΡΡ ΠΊΠ°ΠΊ поля Π²Π²ΠΎΠ΄Π° Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для чтСния. Π― Ρ…ΠΎΡ‡Ρƒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ΠΈ выглядСли ΠΊΠ°ΠΊ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ тСкст. Π― ΠΏΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Π» нСсколько Π²Π΅Ρ‰Π΅ΠΉ со стилСм, ΠΈ ΠΏΠΎΠΊΠ° ΠΌΠ½Π΅ Π½Π΅ ΠΏΠΎΠ²Π΅Π·Π»ΠΎ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ disable Ρ‚Π°ΠΊΠΆΠ΅ Π΄Π΅Π»Π°Π΅Ρ‚ тСкст сСрым, ΠΈ я Π½Π΅…



7

ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ этот ΠΏΡ€ΠΈΠΌΠ΅Ρ€!

<div>Choose a browser from this list:</div>
<input list="browsers" />
<datalist>
  <option value="Chrome">
  <option value="Firefox">
  <option value="Internet Explorer">
  <option value="Opera">
  <option value="Safari">
</datalist>
<div>Choose a browser from this list:</div>
    <input list="browsers" />
    <datalist>
      <option value="Chrome">
      <option value="Firefox">
      <option value="Internet Explorer">
      <option value="Opera">
      <option value="Safari">
    </datalist>

ΠŸΠΎΠ΄Π΅Π»ΠΈΡ‚ΡŒΡΡ Joakim M Β  Β  26 мая 2015 Π² 06:37



5

Π― Π΄ΡƒΠΌΠ°ΡŽ, Ρ‡Ρ‚ΠΎ это ΠΊΠΎΠ³Π΄Π° : послС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ псСвдоэлСмСнт пригодится. ΠžΠ±Π΅Ρ€Π½ΠΈΡ‚Π΅ свой input Π² DIV.

 #wrap:after {
     content:arrow icon image;
 }

JSFiddle

Но ΠΏΠΎΠΊΠ° Π²Ρ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΄Ρ€ΡƒΠ³ΡƒΡŽ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ стилСй CSS для Ρ€Π°Π·Π½Ρ‹Ρ… Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠ², поэтому ΠΏΠΎΠΊΠ° Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ Ρ‚ΠΈΠΏ Π·Π½Π°Ρ‡ΠΊΠ°.

ΠŸΠΎΠ΄Π΅Π»ΠΈΡ‚ΡŒΡΡ freewheeler Β  Β 

26 мая 2015 в 06:44


ΠŸΠΎΡ…ΠΎΠΆΠΈΠ΅ вопросы:


ΠŸΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ выровняйтС тСкст Π²Π½ΡƒΡ‚Ρ€ΠΈ input

Π£ мСня Π΅ΡΡ‚ΡŒ тСкст Ρ‚ΠΈΠΏΠ° input (Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Π» с textarea), ΠΈ я установил Π΅Π³ΠΎ высоту ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ Π½Π° 400 пиксСлСй, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Ρ…ΠΎΡ‡Ρƒ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π΅Π³ΠΎ ΠΏΠΎΡ…ΠΎΠΆΠΈΠΌ Π½Π° тСкстовоС ΠΏΠΎΠ»Π΅. НапримСр, ΠΊΠ°ΠΊ Ρ‚ΠΎΡ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ я…


css класс, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ html select ΠΏΠΎΡ…ΠΎΠΆΠΈΠΌ Π½Π° span

Π― ΠΏΡ‹Ρ‚Π°ΡŽΡΡŒ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ select ΠΏΠΎΡ…ΠΎΠΆΠΈΠΌ Π½Π° span Π½Π° основС Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ условия. Ρƒ мСня Π΅ΡΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ класс css, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ с полями Π²Π²ΠΎΠ΄Π°, Π½ΠΎ ΠΎΠ½ Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ с Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠΌ списком. Π›ΡŽΠ±ΠΎΠ΅…


Как ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉΡΡ список, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ тСкст ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π²Ρ‹Π±Ρ€Π°Π½?

НапримСр, Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉΡΡ список, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ 1,2 ΠΈ 3, Π½ΠΎ ΠΈΠΌΠ΅Π΅Ρ‚ тСкст ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Make a selection. .., Π½Π΅ Π±ΡƒΠ΄ΡƒΡ‡ΠΈ Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌΡ‹ΠΌ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ. Если это вас смущаСт, Ρ‚ΠΎ Π²ΠΎΡ‚ fiddle . Π’ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ΅,…


Π‘Π΄Π΅Π»Π°Ρ‚ΡŒ Brackets.io ΠΏΠΎΡ…ΠΎΠΆΠΈΠΌ Π½Π° Π²ΠΎΠ·Π²Ρ‹ΡˆΠ΅Π½Π½Ρ‹ΠΉ тСкст?

Π― ΠΏΡ€ΠΎΠ±ΡƒΡŽ Brackets.io, Π½ΠΎ ΠΎΠ½ выглядит Π³ΠΎΡ€Π°Π·Π΄ΠΎ Ρ…ΡƒΠΆΠ΅, Ρ‡Π΅ΠΌ Sublime Π½Π° ΠΌΠΎΠ΅ΠΌ экранС (Apple 27). Π¨Ρ€ΠΈΡ„Ρ‚/тСкст (ΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Π» ΠΌΠ½ΠΎΠ³ΠΎ Ρ€Π°Π·Π½Ρ‹Ρ…) Π½Π΅ Ρ‚Π°ΠΊΠΎΠΉ Ρ€Π΅Π·ΠΊΠΈΠΉ ΠΈ fat, ΠΊΠ°ΠΊ Π² Sublime Text. Π•ΡΡ‚ΡŒ Π»ΠΈ способ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π΅Π³ΠΎ…


Как ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΏΠΎΠ»Π΅ Π²Π²ΠΎΠ΄Π° ΠΏΠΎΡ…ΠΎΠΆΠΈΠΌ Π½Π° ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ тСкст

Π’ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ ASP.NET Ρƒ мСня Π΅ΡΡ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ элСмСнтов управлСния textbox, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ΡΡ ΠΊΠ°ΠΊ поля Π²Π²ΠΎΠ΄Π° Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для чтСния. Π― Ρ…ΠΎΡ‡Ρƒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ΠΈ выглядСли ΠΊΠ°ΠΊ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ тСкст. Π― ΠΏΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Π» нСсколько…


FormHelper::input () создаСт Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉΡΡ список select, Ссли имя поля ΠΈΠΌΠ΅Π΅Ρ‚ суффикс «_id»

Π£ мСня Π΅ΡΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ строка ΠΊΠΎΠ΄Π° Π½Π° прСдставлСнии CakePHP: <?php echo $this->Form->input( ‘person_id’, array( ‘label’ => false, ‘div’ => false, ‘class’ => ‘form-control…


Angular-Ionic: сдСлайтС Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠΉ список select ΠΏΠΎΡ…ΠΎΠΆΠΈΠΌ Π½Π° Ρ‚Π΅ΠΊΡΡ‚ΠΎΠ²ΡƒΡŽ ссылку

ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ я Ρ…ΠΎΡ‚Π΅Π» Π±Ρ‹ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠΉ список select tag ΠΏΠΎΡ…ΠΎΠΆΠΈΠΌ Π½Π° ΠΎΠ±Ρ‹Ρ‡Π½ΡƒΡŽ Ρ‚Π΅ΠΊΡΡ‚ΠΎΠ²ΡƒΡŽ ссылку, Π½ΠΎ ΠΏΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ Π½Π° Π½Π΅Π³ΠΎ всС Ρ€Π°Π²Π½ΠΎ Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€ΡƒΠΉΡ‚Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ionics select (mobile dropdown).

(…


Как ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠΉ список react bootstrap с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ panelgroups

Π― ΠΏΡ‹Ρ‚Π°ΡŽΡΡŒ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠΉ список, Π³Π΄Π΅ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ элСмСнт мСню Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ подмСню ΠΊΠ°ΠΊ Drodown(select) 1. List item(header) Litem-1(subheader) Litem-2(subheader) 2. Header-2(header)…


Как ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ angular material input ΠΏΠΎΡ…ΠΎΠΆΠΈΠΌ Π½Π° button?

Π•ΡΡ‚ΡŒ Π»ΠΈ ΠΊΠ°ΠΊΠΎΠΉ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ ΡΡ‚ΠΈΠ»ΡŒ css, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ я ΠΌΠΎΠ³Ρƒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ angular material input ΠΏΠΎΡ…ΠΎΠΆΠΈΠΌ Π½Π° button? ΠŸΡ€ΠΈΡ‡ΠΈΠ½Π° нСобходимости этого Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ: Π― Ρ…ΠΎΡ‡Ρƒ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Ρ‹,…


ΠžΡ‚ html input=»date» Π΄ΠΎ html Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉΡΡ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚

МоТно Π»ΠΈ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚ΡŒ html tag/format <input type=date> Π² html tag/format <select><option></option></select> ? Π― просто Ρ…ΠΎΡ‚Π΅Π» ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π΄Π°Ρ‚Ρƒ Π²Π²ΠΎΠ΄Π° Ρ‚ΠΈΠΏΠ° Π² Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅ΠΌ…

Π€ΠΎΡ€ΠΌΡ‹ – React

Π’Β React HTML-элСмСнты Ρ„ΠΎΡ€ΠΌΡ‹ Π²Π΅Π΄ΡƒΡ‚ сСбя нСсколько ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎ ΠΎΡ‚Β ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ… DOM-элСмСнтов, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ у элСмСнтов Ρ„ΠΎΡ€ΠΌΡ‹ ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ Π΅ΡΡ‚ΡŒ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅Π΅ состояниС. ΠšΒ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ, в эту HTML-Ρ„ΠΎΡ€ΠΌΡƒ ΠΌΠΎΠΆΠ½ΠΎ ввСсти имя:

<form>
  <label>
    Имя:
    <input type="text" name="name" />
  </label>
  <input type="submit" value="ΠžΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ" />
</form>

ΠŸΠΎΒ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ Π½Π°Β Π΄Ρ€ΡƒΠ³ΡƒΡŽ страницу ΠΏΡ€ΠΈ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠ΅ HTML-Ρ„ΠΎΡ€ΠΌ, Π²Β Ρ‚ΠΎΠΌ числС и этой. Если вас это устраиваСт, Ρ‚ΠΎΒ Π½Π΅Β Π½Π°Π΄ΠΎ Π½ΠΈΡ‡Π΅Π³ΠΎ ΠΌΠ΅Π½ΡΡ‚ΡŒ, Π²Β React Ρ„ΠΎΡ€ΠΌΡ‹ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ ΠΊΠ°ΠΊ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ. Однако, Ρ‡Π°Ρ‰Π΅ всСго Ρ„ΠΎΡ€ΠΌΡƒ ΡƒΠ΄ΠΎΠ±Π½Π΅Π΅ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ ΡΒ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ JavaScript-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΡƒΒ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π΅ΡΡ‚ΡŒ доступ ΠΊΒ Π²Π²Π΅Π΄Ρ‘Π½Π½Ρ‹ΠΌ Π΄Π°Π½Π½Ρ‹ΠΌ. Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Ρ‹ΠΉ способ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ‚Π°ΠΊΠΎΠ³ΠΎ повСдСния называСтся «управляСмыС ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹Β».

УправляСмыС ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹

Π’Β HTML элСмСнты Ρ„ΠΎΡ€ΠΌΡ‹, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ <input>, <textarea> ΠΈΒ <select>, ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ сами ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‚ своим состояниСм ΠΈΒ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡŽΡ‚ Π΅Π³ΠΎ ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π²Π²ΠΎΠ΄ΠΈΡ‚ Π΄Π°Π½Π½Ρ‹Π΅. Π’Β React ΠΌΡƒΡ‚Π°Π±Π΅Π»ΡŒΠ½ΠΎΠ΅ состояниС ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ содСрТится в свойствС ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² state и обновляСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Π΅Ρ€Π΅Π· Π²Ρ‹Π·ΠΎΠ² setState()

ΠœΡ‹Β ΠΌΠΎΠΆΠ΅ΠΌ ΡΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ±Π° ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π° ΠΈΒ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ состояниС React-ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° «СдинствСнным источником ΠΏΡ€Π°Π²Π΄Ρ‹Β». Π’ΠΎΠ³Π΄Π° React-ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π΅Π½Π΄Π΅Ρ€ΠΈΡ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡƒ ΠΈΒ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΅Ρ‘Β ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π²Β ΠΎΡ‚Π²Π΅Ρ‚ Π½Π°Β ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ Π²Π²ΠΎΠ΄. Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ элСмСнта Ρ„ΠΎΡ€ΠΌΡ‹ input в этом случаС Π±ΡƒΠ΄Π΅Ρ‚ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ React, а сам элСмСнт Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°Π·Ρ‹Π²Π°Ρ‚ΡŒΡΡ «управляСмый ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Β».

Допустим, ΠΌΡ‹Β Ρ…ΠΎΡ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π²Ρ‹Π²ΠΎΠ΄ΠΈΠ» на экран имя, ΠΊΠΎΠ³Π΄Π° мы отправляСм Ρ„ΠΎΡ€ΠΌΡƒ. Π’ΠΎΠ³Π΄Π° ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡƒ Π²Β Π²ΠΈΠ΄Π΅ управляСмого ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°:

class NameForm extends React.Component {
  constructor(props) {
    super(props);
    this.state = {value: ''};
    this.handleChange = this.handleChange.bind(this);
    this.handleSubmit = this.handleSubmit.bind(this);
  }

  handleChange(event) {    this.setState({value: event.target.value});  }
  handleSubmit(event) {
    alert('ΠžΡ‚ΠΏΡ€Π°Π²Π»Π΅Π½Π½ΠΎΠ΅ имя: ' + this.state.value);
    event.preventDefault();
  }

  render() {
    return (
      <form onSubmit={this.handleSubmit}>
        <label>
          Имя:
          <input type="text" value={this.state.value} onChange={this. handleChange} />        </label>
        <input type="submit" value="ΠžΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ" />
      </form>
    );
  }
}

ΠŸΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π½Π°Β CodePen

ΠœΡ‹Β ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΠ»ΠΈ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ value для поля Π²Π²ΠΎΠ΄Π°, ΠΈΒ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π²Β Π½Ρ‘ΠΌ всСгда Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒΡΡ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ this.state.value. БостояниС React-ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° стало «источником истины». А так ΠΊΠ°ΠΊ ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ клавиши Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ handleChange, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ обновляСт состояниС React-ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°, Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π²Β ΠΏΠΎΠ»Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡ‚ΡŒΡΡ ΠΏΠΎΒ ΠΌΠ΅Ρ€Π΅ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π΅Ρ‚.

В управляСмом ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ поля Π²Π²ΠΎΠ΄Π° всСгда опрСдСляСтся состояниСм React. Π₯отя это ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π²Ρ‹Β Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ большС ΠΊΠΎΠ΄Π°, Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ вы смоТСтС ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΈΒ Π΄Ρ€ΡƒΠ³ΠΈΠΌ UI-элСмСнтам ΠΈΠ»ΠΈ ΡΠ±Ρ€ΠΎΡΠΈΡ‚ΡŒ Π΅Π³ΠΎ с других ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² событий.

Π’Π΅Π³ textarea

HTML-элСмСнт <textarea> в качСствС тСкста ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅Ρ‚ Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΠΉ элСмСнт:

<textarea>
  ΠŸΡ€ΠΈΠ²Π΅Ρ‚! Π’ΡƒΡ‚ просто Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ тСкста Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ‚Π΅Π³Π° textarea
</textarea>

Π’Β React <textarea> ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ value. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Ρ„ΠΎΡ€ΠΌΡƒ с <textarea> ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΠΎΡ‡Ρ‚ΠΈ Ρ‚Π΅ΠΌΒ ΠΆΠ΅ способом, Ρ‡Ρ‚ΠΎ ΠΈΒ Ρ„ΠΎΡ€ΠΌΡƒ с однострочным <input>:

class EssayForm extends React.Component {
  constructor(props) {
    super(props);
    this.state = {      value: 'Π‘ΡƒΠ΄ΡŒΡ‚Π΅ Π»ΡŽΠ±Π΅Π·Π½Ρ‹, Π½Π°ΠΏΠΈΡˆΠΈΡ‚Π΅ сочинСниС ΠΎ вашСм любимом DOM-элСмСнтС.'    };
    this.handleChange = this.handleChange.bind(this);
    this.handleSubmit = this.handleSubmit.bind(this);
  }

  handleChange(event) {    this.setState({value: event.target.value});  }
  handleSubmit(event) {
    alert('Π‘ΠΎΡ‡ΠΈΠ½Π΅Π½ΠΈΠ΅ ΠΎΡ‚ΠΏΡ€Π°Π²Π»Π΅Π½ΠΎ: ' + this.state.value);
    event.preventDefault();
  }

  render() {
    return (
      <form onSubmit={this.handleSubmit}>
        <label>
          Π‘ΠΎΡ‡ΠΈΠ½Π΅Π½ΠΈΠ΅:
          <textarea value={this.state.value} onChange={this.handleChange} />        </label>
        <input type="submit" value="ΠžΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ" />
      </form>
    );
  }
}

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ ΠΌΡ‹Β ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π»ΠΈ this. state.value в конструкторС, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ в тСкстовой области ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ Π΅ΡΡ‚ΡŒ тСкст.

Π’Π΅Π³ select

Π’Β HTML <select> создаёт Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠΉ список. HTML-ΠΊΠΎΠ΄ в этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ создаёт Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠΉ список вкусов:

<select>
  <option value="grapefruit">Π“Ρ€Π΅ΠΉΠΏΡ„Ρ€ΡƒΡ‚</option>
  <option value="lime">Π›Π°ΠΉΠΌ</option>
  <option selected value="coconut">Кокос</option>
  <option value="mango">Манго</option>
</select>

ΠŸΡƒΠ½ΠΊΡ‚ списка «Кокос» Π²Ρ‹Π±Ρ€Π°Π½ ΠΏΠΎΒ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΈΠ·-Π·Π° установлСнного Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π° selected. React вмСсто этого Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ value Π²Β ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠΌ Ρ‚Π΅Π³Π΅ select. В управляСмом ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π΅ Ρ‚Π°ΠΊ ΡƒΠ΄ΠΎΠ±Π½Π΅Π΅, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π½ΡƒΠΆΠ½ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²Β ΠΎΠ΄Π½ΠΎΠΌ мСстС (state). ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

class FlavorForm extends React.Component {
  constructor(props) {
    super(props);
    this.state = {value: 'coconut'};
    this.handleChange = this.handleChange. bind(this);
    this.handleSubmit = this.handleSubmit.bind(this);
  }

  handleChange(event) {    this.setState({value: event.target.value});  }
  handleSubmit(event) {
    alert('Π’Π°Ρˆ Π»ΡŽΠ±ΠΈΠΌΡ‹ΠΉ вкус: ' + this.state.value);
    event.preventDefault();
  }

  render() {
    return (
      <form onSubmit={this.handleSubmit}>
        <label>
          Π’Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ ваш Π»ΡŽΠ±ΠΈΠΌΡ‹ΠΉ вкус:
          <select value={this.state.value} onChange={this.handleChange}>            <option value="grapefruit">Π“Ρ€Π΅ΠΉΠΏΡ„Ρ€ΡƒΡ‚</option>
            <option value="lime">Π›Π°ΠΉΠΌ</option>
            <option value="coconut">Кокос</option>
            <option value="mango">Манго</option>
          </select>
        </label>
        <input type="submit" value="ΠžΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ" />
      </form>
    );
  }
}

ΠŸΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π½Π°Β CodePen

Подводя ΠΈΡ‚ΠΎΠ³, <input type="text">, <textarea>, ΠΈΒ <select> Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΡ…ΠΎΠΆΠ΅. ВсС ΠΎΠ½ΠΈ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°ΡŽΡ‚ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ value, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ управляСмый ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚.

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅

Π’Β Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ value ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ массив, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ нСсколько ΠΎΠΏΡ†ΠΈΠΉ Π²Β Ρ‚Π΅Π³Π΅ select:

<select multiple={true} value={['Π‘', 'Π’']}>

Π—Π°Π³Ρ€ΡƒΠ·ΠΊΠ° Ρ„Π°ΠΉΠ»Π°

Π’Β HTML <input type="file"> позволяСт ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΎΠ΄ΠΈΠ½ ΠΈΠ»ΠΈ нСсколько Ρ„Π°ΠΉΠ»ΠΎΠ² для Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ с устройства на сСрвСр ΠΈΠ»ΠΈ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ΠΈΠΌΒ Ρ‡Π΅Ρ€Π΅Π· JavaScript ΡΒ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ File API.

Π’Π°ΠΊ ΠΊΠ°ΠΊ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ‚Π°ΠΊΠΎΠ³ΠΎ элСмСнта доступно Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для чтСния, это нСуправляСмый React-ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚. ΠœΡ‹Β Ρ€Π°ΡΡΠΊΠ°ΠΆΠ΅ΠΌ ΠΏΡ€ΠΎ этот ΠΈΒ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ нСуправляСмыС ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ Π΄Π°Π»Π΅Π΅ Π²Β Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ.

ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… элСмСнтов input

Если Π²Π°ΠΌ Π½ΡƒΠΆΠ½Ρ‹ нСсколько управляСмых элСмСнтов input, Π²Ρ‹Β ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°Π·Π½Π°Ρ‡ΠΈΡ‚ΡŒ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡƒ ΠΈΠ·Β Π½ΠΈΡ… Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ name, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ-ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΡƒ Ρ€Π΅ΡˆΠ°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ, ΠΎΡΠ½ΠΎΠ²Ρ‹Π²Π°ΡΡΡŒ Π½Π°Β Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΈ event. target.name.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

class Reservation extends React.Component {
  constructor(props) {
    super(props);
    this.state = {
      isGoing: true,
      numberOfGuests: 2
    };

    this.handleInputChange = this.handleInputChange.bind(this);
  }

  handleInputChange(event) {
    const target = event.target;
    const value = target.type === 'checkbox' ? target.checked : target.value;
    const name = target.name;
    this.setState({
      [name]: value    });
  }

  render() {
    return (
      <form>
        <label>
          ΠŸΠΎΠΉΠ΄ΡƒΡ‚:
          <input
            name="isGoing"            type="checkbox"
            checked={this.state.isGoing}
            onChange={this.handleInputChange} />
        </label>
        <br />
        <label>
          ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ гостСй:
          <input
            name="numberOfGuests"            type="number"
            value={this.state.numberOfGuests}
            onChange={this.handleInputChange} />
        </label>
      </form>
    );
  }
}

ΠŸΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π½Π°Β CodePen

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ ΠΌΡ‹Β ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ вычисляСмыС ΠΈΠΌΠ΅Π½Π° свойств, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π²Β state Ρ‡Π΅Ρ€Π΅Π· ΠΊΠ»ΡŽΡ‡, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ соотвСтствуСт Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Ρƒ name элСмСнта input:

this. setState({
  [name]: value});

Π˜Π΄Π΅Π½Ρ‚ΠΈΡ‡Π½Ρ‹ΠΉ ES5-ΠΊΠΎΠ΄:

var partialState = {};
partialState[name] = value;this.setState(partialState);

ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, setState() автоматичСски ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ слияниС части состояния с тСкущим состояниСм, Ρ‚ΠΎΒ Π΅ΡΡ‚ΡŒ Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ Π²Β Π½Π΅Π³ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚ΡƒΒ Ρ‡Π°ΡΡ‚ΡŒ state, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Ρ…ΠΎΡ‚ΠΈΠΌ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ.

Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ null управляСмого ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°

Если ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ управляСмому ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρƒ ΠΏΡ€ΠΎΠΏ value, Ρ‚ΠΎΒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ нС смоТСт ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π±Π΅Π· вашСго ТСлания. Если вы установили value, Π°Β ΠΏΠΎΠ»Π΅ Π²Π²ΠΎΠ΄Π° ΠΏΠΎ-ΠΏΡ€Π΅ΠΆΠ½Π΅ΠΌΡƒ ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, Ρ‚ΠΎ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, вы случайно Π·Π°Π΄Π°Π»ΠΈ value, Ρ€Π°Π²Π½Ρ‹ΠΉ undefined ΠΈΠ»ΠΈ null.

Код Π½ΠΈΠΆΠ΅ это дСмонстрируСт. (Π˜Π·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ Π·Π°Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ input становится Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΌ послС нСбольшой Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ.)

ReactDOM.render(<input value="ΠŸΡ€ΠΈΠ²Π΅Ρ‚" />, mountNode);

setTimeout(function() {
  ReactDOM. render(<input value={null} />, mountNode);
}, 1000);

ΠΠ»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Ρ‹ управляСмым ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°ΠΌ

ИспользованиС управляСмых ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² ΠΈΠ½ΠΎΠ³Π΄Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΡƒΡ‚ΠΎΠΌΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ. ΠŸΡ€ΠΈΡ…ΠΎΠ΄ΠΈΡ‚ΡΡ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ события для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π° измСнСния Π²Π°ΡˆΠΈΡ… Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΒ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ всё состояниС Ρ„ΠΎΡ€ΠΌΡ‹ Ρ‡Π΅Ρ€Π΅Π· ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ React. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ особСнно Ρ€Π°Π·Π΄Ρ€Π°ΠΆΠ°Ρ‚ΡŒ, Ссли вы пСрСноситС ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΡƒΡŽ ΠΊΠΎΠ΄ΠΎΠ²ΡƒΡŽ Π±Π°Π·Ρƒ Π²Β React, ΠΈΠ»ΠΈ ΠΊΠΎΠ³Π΄Π° Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚Π΅ Π½Π°Π΄ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠ΅ΠΉ React-прилоТСния с другой Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ. Π’Β Ρ‚Π°ΠΊΠΎΠΉ ситуации ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€ΠΈΠ³ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ нСуправляСмыС ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹Β β€” Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Π°Ρ Ρ‚Π΅Ρ…Π½ΠΈΠΊΠ° Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π²Π²ΠΎΠ΄Π° Π΄Π°Π½Π½Ρ‹Ρ… Π²Β Ρ„ΠΎΡ€ΠΌΡƒ.

ΠŸΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½Ρ‹Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ

Если Π²Ρ‹Β ΠΈΡ‰Π΅Ρ‚Π΅ ΠΏΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½ΠΎΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Π°Π»ΠΈΠ΄ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π²Π²ΠΎΠ΄, Π·Π°ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ посСщённыС поля Ρ„ΠΎΡ€ΠΌΡ‹ ΠΈΒ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π΅Ρ‘Β ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΡƒ, ΠΏΡ€ΠΈΡΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ΡΡŒ ΠΊΒ Formik. Π­Ρ‚Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° построСна Π½Π°Β ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ°Ρ… управляСмых ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² и управлСния состояниСм, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ Π½Π΅Β ΠΏΡ€Π΅Π½Π΅Π±Ρ€Π΅Π³Π°ΠΉΡ‚Π΅ ΠΈΡ…Β ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΠ΅ΠΌ.

поля, Ρ€Π°Π΄ΠΈΠΎ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΈ Ρ„Π»Π°ΠΆΠΊΠΈ

HTML Ρ„ΠΎΡ€ΠΌΡ‹

Π’ Ρ‚ΠΎ врСмя ΠΊΠΎΠ³Π΄Π° Π΄Ρ€ΡƒΠ³ΠΈΠ΅ элСмСнты HTML ΠΏΡ€ΠΈΠ΄Π°ΡŽΡ‚ вашСй страницС Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΡƒ ΠΈ ΡΡ‚ΠΈΠ»ΡŒ, Ρ„ΠΎΡ€ΠΌΡ‹ Π΄ΠΎΠ±Π°Π²Π»ΡΡŽΡ‚ ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ. HTML Ρ„ΠΎΡ€ΠΌΡ‹ ΡΠ²Π»ΡΡŽΡ‚ΡΡ основной Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ взаимодСйствия ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ ΠΈ сайтом. Они ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ Π·Π°ΠΊΠ°Π·Ρ‹, ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡ‚ΡŒ опросы ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ Π΄Ρ€ΡƒΠ³ΠΎΠ΅.

Как Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ HTML Ρ„ΠΎΡ€ΠΌΡ‹

Π€ΠΎΡ€ΠΌΡ‹ состоят ΠΈΠ· Π΄Π²ΡƒΡ… частСй: HTML Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠ° (Ρ‚ΠΎ Ρ‡Ρ‚ΠΎ отобраТаСтся Π½Π° Π²Π΅Π±-страницС) ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° клиСнтской (ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° заполнСния ΠΏΠΎΠ»Π΅ΠΉ, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° коррСктности Π²Π²Π΅Π΄Π΅Π½Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΈ Ρ‚.Π΄.) ΠΈΠ»ΠΈ сСрвСрной сторонС (сохранСниС Π²Π²Π΅Π΄Π΅Π½Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…, ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠ° элСктронных писСм ΠΈ Ρ‚.Π΄.). ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π΄Π°Π½Π½Ρ‹Ρ… Ρ„ΠΎΡ€ΠΌΡ‹ Π½Π° сСрвСрС ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ написана Π½Π° PHP, Ruby on Rails, Perl, Python, Node.js ΠΈ Java.

Рассмотрим ΠΏΠΎΡˆΠ°Π³ΠΎΠ²ΡƒΡŽ Ρ€Π°Π±ΠΎΡ‚Ρƒ Ρ„ΠΎΡ€ΠΌΡ‹:

  1. ΠΏΠΎΡΠ΅Ρ‚ΠΈΡ‚Π΅Π»ΡŒ Π·Π°Ρ…ΠΎΠ΄ΠΈΡ‚ Π½Π° страницу с Ρ„ΠΎΡ€ΠΌΠΎΠΉ, заполняСт Π΅Π΅ ΠΈ отсылаСт
  2. Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ отсылаСт Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· Ρ„ΠΎΡ€ΠΌΡ‹ Π½Π° сСрвСр
  3. сСрвСр ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Π΅Ρ‚ ΠΈΡ… ΡΡ†Π΅Π½Π°Ρ€ΠΈΡŽ для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ
  4. сСрвСрный сцСнарий ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈ создаСт Π½ΠΎΠ²ΡƒΡŽ HTML-страницу с ΠΎΡ‚Π²Π΅Ρ‚ΠΎΠΌ, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΎΠ½ ΠΏΠ΅Ρ€Π΅Π΄Π°Π΅Ρ‚ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ Π²Π΅Π±-сСрвСру
  5. Π²Π΅Π±-сСрвСр отправляСт страницу с ΠΎΡ‚Π²Π΅Ρ‚ΠΎΠΌ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Ρƒ
  6. Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ страницу ΠΈ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅Ρ‚ Π΅Π΅

HTML Ρ‚Π΅Π³ <form>

Π€ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ, всС элСмСнты Ρ„ΠΎΡ€ΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π²Π½ΡƒΡ‚Ρ€ΠΈ элСмСнта <form>:


<form action="myform. php" method="post">
...
содСрТимоС Ρ„ΠΎΡ€ΠΌΡ‹
...
</form>

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ <form> являСтся ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠΌ, Ρ‚Π°ΠΊΠΈΠΌ ΠΆΠ΅ ΠΊΠ°ΠΊ <div> ΠΈΠ»ΠΈ <span>, Π½ΠΎ ΠΎΠ½ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ запрос ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ, ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π½Π°ΠΆΠΈΠΌΠ°Π΅Ρ‚ ΠΊΠ½ΠΎΠΏΠΊΡƒ «ΠžΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ». Двумя Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π²Π°ΠΆΠ½Ρ‹ΠΌΠΈ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π°ΠΌΠΈ ΡΠ²Π»ΡΡŽΡ‚ΡΡ action ΠΈ method.

  • Атрибут action ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΏΡƒΡ‚ΡŒ ΠΊ Ρ„Π°ΠΉΠ»Ρƒ, ΠΊΡƒΠ΄Π° слСдуСт ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ собранныС Π΄Π°Π½Π½Ρ‹Π΅. Если ΠΎΠ½ Π½Π΅ ΡƒΠΊΠ°Π·Π°Π½, Π΄Π°Π½Π½Ρ‹Π΅ ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡŽΡ‚ΡΡ Π½Π° URL-адрСс страницы, содСрТащСй Ρ„ΠΎΡ€ΠΌΡƒ.
  • Атрибут method ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π΄Π°Π½Π½Ρ‹Ρ…: get ΠΈΠ»ΠΈ post. (ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°Ρ… ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π΄Π°Π½Π½Ρ‹Ρ… Ρ‡ΠΈΡ‚Π°ΠΉΡ‚Π΅ описаниС Ρ‚Π΅Π³Π° <form> Π² HTML справочникС)

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ <input>

НаиболСС часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΌ элСмСнтом Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ… являСтся <input>. Он позволяСт Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π² Ρ„ΠΎΡ€ΠΌΡƒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ элСмСнты для Π²Π²ΠΎΠ΄Π° Π΄Π°Π½Π½Ρ‹Ρ…. Какой ΠΈΠΌΠ΅Π½Π½ΠΎ элСмСнт Π²Π²ΠΎΠ΄Π° Π΄Π°Π½Π½Ρ‹Ρ… Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ Π½Π° экранС опрСдСляСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π° type:

type=»text»
Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ text создаСт однострочноС тСкстовоС ΠΏΠΎΠ»Π΅:

<form action="myform. php" method="post">
  <input type="text" name="name">
</form>
ΠŸΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ Β»

Атрибут name трСбуСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Ρƒ элСмСнтов Ρ„ΠΎΡ€ΠΌΡ‹, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π΅Π³ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ пСрСдаСтся Π½Π° сСрвСр ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ сСрвСрными сцСнариями.

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ элСмСнт <input> относится ΠΊ пустым элСмСнтам ΠΈ Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ Π·Π°ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅Π³ΠΎ Ρ‚Π΅Π³Π°, поэтому ΠΏΠ΅Ρ€Π΅Π΄ ΠΈΠ»ΠΈ послС элСмСнта ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π΄ΠΎΠ±Π°Π²Π»ΡΡŽΡ‚ тСкст (ΠΌΠ΅Ρ‚ΠΊΠ°), содСрТащий ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ Π½ΡƒΠΆΠ½ΠΎ Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Π² Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π΅ ΠΏΠΎΠ»Π΅.

type=»submit»
Π‘ΠΎΠ·Π΄Π°Π΅Ρ‚ ΠΊΠ½ΠΎΠΏΠΊΡƒ, ΠΏΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ отправляСт Ρ„ΠΎΡ€ΠΌΡƒ Π½Π° сСрвСр:

<form action="myform.php" method="post">
  <input  type="submit" value="ΠžΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ">
</form>
Атрибут value Π·Π°Π΄Π°Π΅Ρ‚ тСкст, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΠ΅, замСняя Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ установлСнноС ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ.
type=»radio»
Π‘ΠΎΠ·Π΄Π°Π΅Ρ‚ элСмСнты управлСния, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠ΅ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ ΠΈΠ· ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ…, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Ρ‚Π°ΠΊΠΈΠ΅ элСмСнты управлСния ΡΠ²Π»ΡΡŽΡ‚ΡΡ взаимозамСняСмыми. Они Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ Ρ€Π°Π΄ΠΈΠΎ ΠΊΠ½ΠΎΠΏΠΊΠ°ΠΌΠΈ ΠΈΠ»ΠΈ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»ΡΠΌΠΈ:

<form action="myform.php" method="post">
  <input type="radio" name="response" value="yes">Π΄Π°<br>
  <input type="radio" name="response" value="no">Π½Π΅Ρ‚
</form>
ΠŸΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ Β»

ВсС Ρ€Π°Π΄ΠΈΠΎ ΠΊΠ½ΠΎΠΏΠΊΠΈ, связанныС с Π·Π°Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π°ΠΌΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π° name, Π½ΠΎ каТдая ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Π°Ρ Ρ€Π°Π΄ΠΈΠΎ ΠΊΠ½ΠΎΠΏΠΊΠ° Π΄ΠΎΠ»ΠΆΠ½Π° ΠΈΠΌΠ΅Ρ‚ΡŒ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π° value.

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: элСмСнт <input> являСтся строчным элСмСнтом, поэтому для отобраТСния ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ элСмСнта управлСния Π½Π° Π½ΠΎΠ²ΠΎΠΉ строкС Π½ΡƒΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ послС ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ элСмСнта Ρ‚Π΅Π³ <br> ΠΈΠ»ΠΈ ΠΏΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ элСмСнт Π² Π°Π±Π·Π°Ρ† (Π² Ρ‚Π΅Π³ <p>).

type=»checkbox»
Π‘ΠΎΠ·Π΄Π°Π΅Ρ‚ элСмСнты управлСния, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ ΠΎΡ‚ΠΌΠ΅Ρ‡Π°Ρ‚ΡŒ любоС количСство Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² ΠΈΠ»ΠΈ ΠΎΡ‚ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π²Ρ‹Π±ΠΎΡ€, Π½Π΅ Π²Ρ‹Π±Ρ€Π°Π² Π½ΠΈ ΠΎΠ΄Π½ΠΎ ΠΈΠ· ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ. Π’Π°ΠΊΠΈΠ΅ элСмСнты управлСния Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ Ρ„Π»Π°ΠΆΠΊΠ°ΠΌΠΈ.

<form action="myform.php" method="post">
  <p><input type="checkbox" name="spice" value="Salt">Боль</p>
  <p><input type="checkbox" name="spice" value="Pepper">ΠŸΠ΅Ρ€Π΅Ρ†</p>
  <p><input type="checkbox" name="spice" value="Garlic">ЧСснок</p>
</form>
ΠŸΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ Β»

ВсС Ρ„Π»Π°ΠΆΠΊΠΈ, относящиСся ΠΊ ΠΎΠ΄Π½ΠΎΠΉ Π³Ρ€ΡƒΠΏΠΏΠ΅, Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π° name, Π½ΠΎ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΠΌΠ΅Ρ‚ΡŒ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π° value.

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: всС допустимыС значСния Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π° type смотритС Π² нашСм HTML справочникС Π² описании элСмСнта <input>.

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ <textarea>

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ <textarea> создаСт многострочноС тСкстовоС ΠΏΠΎΠ»Π΅. Если Π² ΠΏΠΎΠ»Π΅ Π²Π²Π΅Π΄Π΅Π½ΠΎ большС тСкста, Ρ‡Π΅ΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ помСстится Π² тСкстовой области, Ρ‚ΠΎ с ΠΏΡ€Π°Π²ΠΎΠΉ стороны появляСтся полоса ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‚ΠΊΠΈ. ВСкст, располоТСнный ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΌ ΠΈ Π·Π°ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΌ Ρ‚Π΅Π³ΠΎΠΌ, Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒΡΡ Π² тСкстовом ΠΏΠΎΠ»Π΅ Π² качСствС значСния ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ:


<form action="myform.php" method="post">
  <textarea name="comments" rows="10" cols="48">ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ ΠΎΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ Ρ‚ΡƒΡ‚!</textarea>
</form>
ΠŸΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ Β»

Атрибут name Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠ΅ имя, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹ΠΉ элСмСнт Π½Π° сСрвСрной сторонС. Атрибут rows позволяСт ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ количСство строк, ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‰ΠΈΡ… высоту тСкстовой области, Π° cols Π·Π°Π΄Π°Π΅Ρ‚ ΡˆΠΈΡ€ΠΈΠ½Ρƒ тСкстовой области Π² символах.

Π’Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠΉ список

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ <select> создаСт мСню, содСрТащСС Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠΉ список. Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ списка Π·Π°Π΄Π°ΡŽΡ‚ΡΡ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ элСмСнтов <option>, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Ρ€Π°ΡΠΏΠΎΠ»Π°Π³Π°Ρ‚ΡŒΡΡ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΌ ΠΈ Π·Π°ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΌ Ρ‚Π΅Π³Π°ΠΌΠΈ элСмСнта <select>:


<form action="myform.php" method="post">
  <select name="character">
    <option value="Homer">Homer Simpson</option>
    <option value="Marge">Marge Simpson</option>
    <option value="Bart">Bart Simpson</option>
    <option value="Lisa">Lisa Simpson</option>
    <option value="Maggie">Maggie Simpson</option>
  </select>
</form>
ΠŸΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ Β»

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ <fieldset> ΠΈ <legend>

Для Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ выдСлСния взаимосвязанных элСмСнтов Ρ„ΠΎΡ€ΠΌΡ‹ ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ элСмСнтом <fieldset>, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ добавляСт Ρ€Π°ΠΌΠΊΡƒ Π²ΠΎΠΊΡ€ΡƒΠ³ своих Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΡ… элСмСнтов:


<form action="myform. php" method="post">

  <input type="radio" name="response" value="yes">Π΄Π°<br>
  <input type="radio" name="response" value="no">Π½Π΅Ρ‚
  
  <fieldset>
    <p><input type="checkbox" name="spice" value="Salt">Боль</p>
    <p><input type="checkbox" name="spice" value="Pepper">ΠŸΠ΅Ρ€Π΅Ρ†</p>
    <p><input type="checkbox" name="spice" value="Garlic">ЧСснок</p>
  </fieldset>
  
</form>
ΠŸΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ Β»

НазваниС (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ) для Ρ‚Π°ΠΊΠΎΠΉ Π³Ρ€ΡƒΠΏΠΏΡ‹ элСмСнтов ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ элСмСнта <legend>, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΠΌ элСмСнтом Π²Π½ΡƒΡ‚Ρ€ΠΈ элСмСнта <fieldset>:


<form action="myform.php" method="post">

  <input type="radio" name="response" value="yes">Π΄Π°<br>
  <input type="radio" name="response" value="no">Π½Π΅Ρ‚
  
  <fieldset>
    <legend>Π‘ΠΏΠ΅Ρ†ΠΈΠΈ</legend>
    <p><input type="checkbox" name="spice" value="Salt">Боль</p>
    <p><input type="checkbox" name="spice" value="Pepper">ΠŸΠ΅Ρ€Π΅Ρ†</p>
    <p><input type="checkbox" name="spice" value="Garlic">ЧСснок</p>
  </fieldset>
  
</form>
ΠŸΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ Β»

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ <label>

МоТно Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ тСкст ΠΊ элСмСнтам Ρ„ΠΎΡ€ΠΌΡ‹ просто написав Π΅Π³ΠΎ рядом с Π½ΡƒΠΆΠ½Ρ‹ΠΌ элСмСнтом, Π½ΠΎ для Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠ² ΠΈ поисковых систСм, Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΡƒΡŽΡ‰ΠΈΡ… Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΡƒ Π²Π΅Π±-страницы, это Π±ΡƒΠ΄Π΅Ρ‚ просто тСкст, Π½Π΅ ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠΉ прямого ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ Π½ΠΈ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ ΠΈΠ· элСмСнтов Ρ„ΠΎΡ€ΠΌΡ‹. Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ <label> позволяСт ΡΠ²ΡΠ·Π°Ρ‚ΡŒ тСкст с ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌ элСмСнтом Ρ„ΠΎΡ€ΠΌΡ‹, Ρ‚Π°ΠΊΠΎΠΉ тСкст называСтся ΠΌΠ΅Ρ‚ΠΊΠΎΠΉ (ΠΈΠ»ΠΈ ярлыком).

По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΌΠ΅Ρ‚ΠΊΠΈ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎ Π½Π΅ ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ ΠΎΡ‚ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠ³ΠΎ тСкста, ΠΎΠ΄Π½Π°ΠΊΠΎ ΠΎΠ½ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Π²Ρ‹Π±ΠΈΡ€Π°Ρ‚ΡŒ элСмСнты Ρ„ΠΎΡ€ΠΌΡ‹ кликая Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° сам элСмСнт, Π½ΠΎ ΠΈ Π½Π° Π΅Π³ΠΎ ΠΌΠ΅Ρ‚ΠΊΡƒ.

Π‘Π²ΡΠ·Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΊΡƒ с элСмСнтом Ρ„ΠΎΡ€ΠΌΡ‹ ΠΌΠΎΠΆΠ½ΠΎ двумя способами: ΠΏΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ вСсь элСмСнт Ρ„ΠΎΡ€ΠΌΡ‹ Π²Π½ΡƒΡ‚Ρ€ΡŒ элСмСнта <label> ΠΈΠ»ΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π° for, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π² качСствС значСния ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ элСмСнта Ρ„ΠΎΡ€ΠΌΡ‹, с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΡΠ²ΡΠ·Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΊΡƒ:


<form action="myform.php" method="post">

  <p><label><input type="radio" name="response" value="yes">Π΄Π°</label></p>
  <p><label><input type="radio" name="response" value="no">Π½Π΅Ρ‚</label></p>
	
  <p>
    <input type="checkbox" name="spice" value="Salt">
	<label for="spice_salt">Боль</label>
  </p>
  <p>
    <input type="checkbox" name="spice" value="Pepper">
	<label for="spice_pepper">ΠŸΠ΅Ρ€Π΅Ρ†</label>
  </p>
  <p>
    <input type="checkbox" name="spice" value="Garlic">
	<label for="spice_garlic">ЧСснок</label>
  </p>
  
</form>
ΠŸΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ Β»

ΠœΠ΅Ρ‚ΠΊΠΈ ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ Π΄ΠΎ Ρ‚Π°ΠΊ ΠΈ послС элСмСнта управлСния, связанного с Π½Π΅ΠΉ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ, Ссли Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π° for элСмСнта <label> совпадаСт со Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π° id элСмСнта Ρ„ΠΎΡ€ΠΌΡ‹, Ρ‚ΠΎ Π½Π΅Π²Π°ΠΆΠ½ΠΎ Π³Π΄Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ ΠΌΠ΅Ρ‚ΠΊΠ°.

ОписаниС Ρ„ΠΎΡ€ΠΌ — ДокумСнтация COREmanager

Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅

ΠœΡ‹ раздСляСм всС запросы, приходящиС Π² панСль ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с Ρ„ΠΎΡ€ΠΌΠ°ΠΌΠΈ, Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Ρ‚ΠΈΠΏΡ‹:

  • get β€” это запрос Π½Π° ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ Ρ„ΠΎΡ€ΠΌΡ‹. Запрос являСтся get, Ссли Π½Π΅ содСрТит ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° sok=ok.
    • setvalues β€” особая Ρ€Π°Π·Π½ΠΎΠ²ΠΈΠ΄Π½ΠΎΡΡ‚ΡŒ get-запроса, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для автозаполнСния ΠΏΠΎΠ»Π΅ΠΉ Ρ„ΠΎΡ€ΠΌ. Запрос являСтся setvalues, Ссли Π½Π΅ содСрТит sok=ok ΠΈ содСрТит ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ sv_field, ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉ имя измСнившСгося поля (ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ смотри поля Π²Π²ΠΎΠ΄Π° ).
  • set β€” запрос, приходящий ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π½Π°ΠΆΠΈΠΌΠ°Π΅Ρ‚ Π½Π° Ρ„ΠΎΡ€ΠΌΠ΅ ΠΊΠ½ΠΎΠΏΠΊΡƒ ok. Запрос являСтся set, Ссли содСрТит ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ sok=ok
    • new β€” запрос Π½Π° созданиС. Π­Ρ‚ΠΎ set-запрос Π±Π΅Π· ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° ΠΈΠ»ΠΈ с пустым ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ elid
    • edit β€” запрос Π½Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅. Π­Ρ‚ΠΎ set-запрос с нСпустым ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ elid

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² любом тэгС Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ… Ρ„ΠΎΡ€ΠΌΡ‹:

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ remove_if

Π›ΡŽΠ±ΠΎΠΉ тэг Π² описании ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ… Ρ„ΠΎΡ€ΠΌΡ‹ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ remove_if. Если Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ этого Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π° Ρ€Π°Π²Π½ΠΎ new β€” тэг Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Ρ€Π΅Π·Π°Π½ ΠΏΡ€ΠΈ get запросС с пустым ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ elid. Если Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π° Ρ€Π°Π²Π½ΠΎ edit β€” тэг Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Ρ€Π΅Π·Π°Π½ ΠΏΡ€ΠΈ get запросС с нСпустым ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ elid. Π›ΡŽΠ±Ρ‹Π΅ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ значСния этого Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π° Π½ΠΈΠΊΠ°ΠΊ Π½Π΅ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‚ΡΡ.

НачнСм с ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°. Π‘Π»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ XML описываСт Ρ„ΠΎΡ€ΠΌΡƒ «ΠΠ°ΡΡ‚Ρ€ΠΎΠΉΠΊΠΈ ΠΏΠ°Π½Π΅Π»ΠΈ». Π­Ρ‚Π° ΡΡ‚Π°Ρ‚ΡŒΡ посвящСна описанию тэгов ΠΈ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠ² этого XML-ΠΊΠΎΠ΄Π°.

<metadata name="usrparam" type="form">
  <form>
    <field name="name">
      <input type="text" name="name" readonly="yes"/>
    </field>
    <field name="theme">
      <select name="theme"/>
    </field>
    <field name="lang">
      <select name="lang"/>
    </field>
    <field name="atype">
      <select name="atype">
        <if value="atany" hide="addr"/>
      </select>
    </field>
    <field name="addr">
      <input type="text" name="addr" zoom="5" check="iprange"/>
    </field>
    <field name="startpage">
      <select name="startpage"/>
    </field>
    <field name="rows">
      <input type="text" name="rows" maxlength="4" check="int" checkargs="5,9999"/>
    </field>
    <field name="recordlimit">
      <input type="text" name="recordlimit" maxlength="9" check="int" checkargs="1,999999999"/>
    </field>
    <field name="buttonview">
      <select name="buttonview"/>
    </field>
  </form>
</metadata>

ОписаниС внСшнСго вида

Π€ΠΎΡ€ΠΌΠ°

ВсС ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΡ‹Π΅ элСмСнты Ρ„ΠΎΡ€ΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ описаны Π²Π½ΡƒΡ‚Ρ€ΠΈ тэга form.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ autocomplete

Если ΠΈΠΌΠ΅Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ «off», Π°Π²Ρ‚ΠΎΠ·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ»Π΅ΠΉ срСдствами Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π° Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΎ.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ cancelrefresh

Если Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ Π·Π°Π΄Π°Π½, Ρ‚ΠΎ список, ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π±Ρ‹Π»Π° Π²Ρ‹Π·Π²Π°Π½Π° Ρ„ΠΎΡ€ΠΌΠ°, Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠ±Π½ΠΎΠ²Π»Ρ‘Π½ ΠΈ ΠΏΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠžΡ‚ΠΌΠ΅Π½Π°.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ maxwidth

Если Π·Π°Π΄Π°Π½, Ρ„ΠΎΡ€ΠΌΠ° ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Ρ‚ΡŒΡΡ максимальной ΡˆΠΈΡ€ΠΈΠ½Ρ‹.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ nocancel

Если Π·Π°Π΄Π°Π½, Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒΡΡ ΠΊΠ½ΠΎΠΏΠΊΠ° ΠžΡ‚ΠΌΠ΅Π½Π°. Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ nosubmit Если Π·Π°Π΄Π°Π½, Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒΡΡ ΠΊΠ½ΠΎΠΏΠΊΠ° OK.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ target

Если Ρ€Π°Π²Π΅Π½ ‘blank’, Ρ‚ΠΎ ΠΎΡ‚Π²Π΅Ρ‚ Ρ„ΠΎΡ€ΠΌΠ° Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΏΡ€Π°Π²Π»Π΅Π½Π° Π² Π½ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ action

Если Π·Π°Π΄Π°Π½, Ρ‚ΠΎ Ρ„ΠΎΡ€ΠΌΠ° Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΏΡ€Π°Π²Π»Π΅Π½Π° ΠΏΠΎ адрСсу ΠΈΠ· Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π°

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ wizard

Если Π·Π°Π΄Π°Π½, Ρ„ΠΎΡ€ΠΌΠ° Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Π²ΠΈΠ΄ мастСра . ΠŸΡ€ΠΈ этом, Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ «first» Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π²ΡƒΡŽ страницу, «middle» ΠΎΠ΄Π½Ρƒ ΠΈΠ· срСдинных, «last» послСднюю.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ helpurl

Если Π·Π°Π΄Π°Π½, Ρ‚ΠΎ ΠΏΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ Π²Ρ‹Π·ΠΎΠ²Π° справки Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Π° страница, указанная Π² Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΈ Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π°. Если Π² URL присутствуСт макрос __LANG_, ΠΎΠ½ Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°ΠΌΠ΅Π½Π΅Π½ Π½Π° Π°Π±Π±Ρ€Π΅Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρƒ языка интСрфСйса ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ. Если Π½Π΅ Π·Π°Π΄Π°Π½, Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π·Π²Π°Π½Π° функция Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ ΠΏΠ°Π½Π΅Π»ΠΈ help, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π² ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π΅ topic Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅Π΄Π°Π½ΠΎ имя Ρ„ΠΎΡ€ΠΌΡ‹. Π­Ρ‚Π° функция Π΄ΠΎΠ»ΠΆΠ½Π° Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ URL с Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠ΅ΠΉ ΠΏΠΎ этой Ρ„ΠΎΡ€ΠΌΠ΅.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ clear

управляСт ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ ΠΊΠ½ΠΎΠΏΠΊΠΈ «ΠžΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡƒ». Если Π·Π°Π΄Π°Π½, Ρ‚ΠΎ Ρ„ΠΎΡ€ΠΌΠ° очищаСтся ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ: всС поля Π²Π²ΠΎΠ΄Π° Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ пустоС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Π²ΠΎ всСх select Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π±Ρ€Π°Π½ΠΎ ΠΏΠ΅Ρ€Π²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, всС Ρ„Π»Π°ΠΆΠΊΠΈ Π±ΡƒΠ΄ΡƒΡ‚ сняты. Π’ ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС срабатываСт встроСнный ΠΌΠ΅Ρ‚ΠΎΠ΄ Ρ„ΠΎΡ€ΠΌΡ‹ .reset(), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ сбросит значСния ΠΏΠΎΠ»Π΅ΠΉ Ρ„ΠΎΡ€ΠΌΡ‹ Π² состояниС, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π±Ρ‹Π»ΠΎ Π½Π° ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π΅Ρ‘ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ. Π”Π°Π½Π½Ρ‹ΠΉ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ ΡƒΠ΄ΠΎΠ±Π΅Π½ ΠΏΡ€ΠΈ описании Ρ„ΠΎΡ€ΠΌ для Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΠΎΠ².

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ progress

Если ΠΈΠΌΠ΅Π΅Ρ‚ нСпустоС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ (Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ «yes»), Ρ‚ΠΎ послС ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ Ρ„ΠΎΡ€ΠΌΡ‹ Π±ΡƒΠ΄ΡƒΡ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒΡΡ этапы выполнСния запроса. Если Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π° Ρ€Π°Π²Π½ΠΎ «notime», этапы выполнСния Π±ΡƒΠ΄ΡƒΡ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒΡΡ, Π½ΠΎ Π±Π΅Π· Π²Ρ‹Π²ΠΎΠ΄Π° ΠΎΠΆΠΈΠ΄Π°Π΅ΠΌΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ исполнСния. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ, Ссли количСство шагов Π·Π°Ρ€Π°Π½Π΅Π΅ нСизвСстно ΠΈΠ»ΠΈ врСмя выполнСния ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… шагов сильно отличаСтся. Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π° «wait» Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ progress ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠΆΠΈΠ΄Π°Ρ‚ΡŒ пСрСзапуска ΠΏΠ°Π½Π΅Π»ΠΈ (Π² ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ… случаях progress исчСзаСт, ΠΊΠ°ΠΊ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π·Π°Π²Π΅Ρ€ΡˆΠΈΡ‚ΡΡ запрос)

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ title

Π·Π°Π΄Π°Π΅Ρ‚ имя Ρ‚Π΅Π³Π°, содСрТимоС ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΊΠ°ΠΊ имя Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΡƒΠ΅ΠΌΠΎΠ³ΠΎ элСмСнта. Если Π½Π΅ Π·Π°Π΄Π°Π½, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ elid.

элСмСнт page

см. Π’ΠΊΠ»Π°Π΄ΠΊΠΈ (элСмСнт page)

элСмСнт field

см. ОписаниС ΠΏΠΎΠ»Π΅ΠΉ Ρ„ΠΎΡ€ΠΌΡ‹ (элСмСнт field)

Π’ΠΊΠ»Π°Π΄ΠΊΠΈ (элСмСнт page)

Если ваша Ρ„ΠΎΡ€ΠΌΠ° содСрТит большоС количСство ΠΏΠΎΠ»Π΅ΠΉ, ΠΆΠ΅Π»Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ поля ΠΏΠΎ смыслу ΠΈ Ρ€Π°ΡΠΏΠΎΠ»Π°Π³Π°Ρ‚ΡŒ ΠΈΡ… Π½Π° ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… Π²ΠΊΠ»Π°Π΄ΠΊΠ°Ρ… Ρ„ΠΎΡ€ΠΌ.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ name

Имя Π²ΠΊΠ»Π°Π΄ΠΊΠΈ. НСобходимо для связки с языками.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ collapsed

БостояниС Π²ΠΊΠ»Π°Π΄ΠΊΠΈ. Если Ρ€Π°Π²Π½ΠΎ yes, Ρ‚ΠΎ Π²ΠΊΠ»Π°Π΄ΠΊΠ° Π±ΡƒΠ΄Π΅Ρ‚ свёрнута.

элСмСнты field

ΠžΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ поля, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΅ΡΡ‚ΡŒ Π½Π° Π΄Π°Π½Π½ΠΎΠΉ Π²ΠΊΠ»Π°Π΄ΠΊΠ΅. ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ см. ОписаниС ΠΏΠΎΠ»Π΅ΠΉ Ρ„ΠΎΡ€ΠΌΡ‹ (элСмСнт field)

ОписаниС ΠΏΠΎΠ»Π΅ΠΉ Ρ„ΠΎΡ€ΠΌΡ‹ (элСмСнт field)

Поля Ρ„ΠΎΡ€ΠΌΡ‹ ΠΌΠΎΠ³ΡƒΡ‚ Ρ€Π°ΡΠΏΠΎΠ»Π°Π³Π°Ρ‚ΡŒΡΡ ΠΈΠ»ΠΈ Π½Π° Π²ΠΊΠ»Π°Π΄ΠΊΠ°Ρ…, ΠΈΠ»ΠΈ нСзависимо Π²Π½ΡƒΡ‚Ρ€ΠΈ тэга form. Π‘ΠΌΠ΅ΡˆΠΈΠ²Π°Ρ‚ΡŒ Π΄Π²Π° этих Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π° нСльзя. ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΠΎΠ΅ имя поля бСрСтся ΠΈΠ· ΠΎΠ΄Π½ΠΎΠΈΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ сообщСния Π½Π° языкС интСрфСйса. ΠšΡ€ΠΎΠΌΠ΅ ΠΈΠΌΠ΅Π½ΠΈ, Ρƒ поля Ρ„ΠΎΡ€ΠΌΡ‹ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½ΠΎΠ΅ описаниС, ΠΏΠΎΡΠ²Π»ΡΡŽΡ‰Π΅Π΅ΡΡ ΠΏΡ€ΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ указатСля Π½Π° имя поля. Оно бСрСтся ΠΈΠ· сообщСния с ΠΈΠΌΠ΅Π½Π΅ΠΌ hint<имя поля>_.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ name

Имя поля. 

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ fullwidth

Π Π°Π·Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΠΎ ΠΏΠΎΠ»Π΅ Π½Π° всю ΡˆΠΈΡ€ΠΈΠ½Ρƒ страницы. ΠŸΡ€ΠΈ этом Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ поля Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ Π²Π²Π΅Ρ€Ρ…Ρƒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΉ строкой.Β 

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ formwidth

Π Π°Π·Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΠΎ ΠΏΠΎΠ»Π΅ Π½Π° всю ΡˆΠΈΡ€ΠΈΠ½Ρƒ Ρ„ΠΎΡ€ΠΌΡ‹. ΠŸΡ€ΠΈ этом Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ поля Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ Π²Π²Π΅Ρ€Ρ…Ρƒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΉ строкой.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ noname

НС ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ поля.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ fixed

ΠŸΠΎΠ·ΠΈΡ†ΠΈΡ поля Π±ΡƒΠ΄Π΅Ρ‚ зафиксирована Π² исходном ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ, нСзависимо ΠΎΡ‚ скроллинга.

элСмСнт input

БоотвСтствуСт input ΠΈΠ· HTML

элСмСнт select

Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒ Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠΉ список

элСмСнт textarea

ΠœΠ½ΠΎΠ³ΠΎΡΡ‚Ρ€ΠΎΡ‡Π½ΠΎΠ΅ ΠΏΠΎΠ»Π΅ Π²Π²ΠΎΠ΄Π°

элСмСнт slider

Π’Ρ‹Π±ΠΎΡ€ числа ΠΈΠ· ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π°

элСмСнт list

ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΡ списка с ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ°ΠΌΠΈ ΠΈ ΠΊΠ½ΠΎΠΏΠΊΠ°ΠΌΠΈ Π½Π° Ρ„ΠΎΡ€ΠΌΠ΅

элСмСнт tree

Π’Ρ‹Π±ΠΎΡ€ значСния ΠΈΠ· списка Π² Π²ΠΈΠ΄Π΅ Π΄Π΅Ρ€Π΅Π²Π° элСмСнт htmldata ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ HTML-Π΄Π°Π½Π½Ρ‹Ρ…

элСмСнт textdata

Π’Ρ‹Π²ΠΎΠ΄ тСкстовой ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ

элСмСнт frame

ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Ρ„Ρ€Π΅ΠΉΠΌΠ°

Поля ввода

КаТдоС ΠΏΠΎΠ»Π΅ Ρ„ΠΎΡ€ΠΌΡ‹ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ ΠΎΠ΄Π½ΠΎ ΠΈΠ»ΠΈ нСсколько ΠΏΠΎΠ»Π΅ΠΉ Π²Π²ΠΎΠ΄Π°. Π”Π°Π»Π΅Π΅ пСрСчислСн Π½Π°Π±ΠΎΡ€ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠ², ΠΎΠ±Ρ‰ΠΈΠΉ для всСх ΠΏΠΎΠ»Π΅ΠΉ. Для настройки ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² ΠΏΠΎΠ»Π΅ΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ спСцифичныС Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ описаны Π² ΠΏΠΎΠ΄Ρ€Π°Π·Π΄Π΅Π»Π°Ρ… Π΄Π°Π½Π½ΠΎΠΉ Π³Π»Π°Π²Ρ‹.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ name

Имя поля. Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ поля Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Π½ΠΎ ΠΈΠ· Ρ‚Π΅Π³Π° имя ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ соотвСтствуСт Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π°. А Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ Ρ„ΠΎΡ€ΠΌΡ‹, Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ поля Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅Π΄Π°Π½ΠΎ Π² ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π΅ с Ρ‚Π°ΠΊΠΈΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ environ

Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ «no», ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ этого поля Π½Π΅ слСдуСт ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ Π²ΠΎ внСшниС ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ окруТСния. ПолСзСн для ΠΏΠΎΠ»Π΅ΠΉ, Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ°Ρ‚ΡŒ дСсятки ΠΊΠΈΠ»ΠΎΠ±Π°ΠΉΡ‚

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ readonly

Если Π·Π°Π΄Π°Π½ΠΎ, ΠΏΠΎΠ»Π΅ Π±ΡƒΠ΄Π΅Ρ‚ доступно Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для чтСния.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ level

Π‘ΠΌ. Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅.Β 

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ convert

Π—Π°Π΄Π°Π΅Ρ‚ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ для прСобразования значСния поля. Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ этого поля Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΎ с использованиСм Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° ΠΏΡ€ΠΈ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ записи. ΠŸΡ€ΠΈ Π΅Π΅ просмотрС Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΎ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠ΅ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅. На Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹:

  • punycode ΠΏΡ€ΠΈ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΈΠ· UTF-8 прСобразуСтся Π² punycode Ρ„ΠΎΡ€ΠΌΠ°Ρ‚. ΠŸΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ‚ΡΡ, Ρ‡Ρ‚ΠΎ этот Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для прСобразования Π΄ΠΎΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΈΠΌΠ΅Π½ ΠΈ адрСсов элСктронной ΠΏΠΎΡ‡Ρ‚Ρ‹. Π’ послСднСм случаС, прСобразуСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΄ΠΎΠΌΠ΅Π½, имя ΠΏΠΎΡ‡Ρ‚ΠΎΠ²ΠΎΠ³ΠΎ ящика остаСтся Π±Π΅Π· ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ.
  • money Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ раздСляСтся ΠΏΡ€ΠΎΠ±Π΅Π»Π°ΠΌΠΈ Π½Π° Π³Ρ€ΡƒΠΏΠΏΡ‹ ΠΏΠΎ Ρ‚Ρ€ΠΈ Ρ†ΠΈΡ„Ρ€Ρ‹
  • bytes/abytes Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ прСобразуСтся Π² ΡƒΠ΄ΠΎΠ±ΠΎΡ‡ΠΈΡ‚Π°Π΅ΠΌΠΎΠ΅ прСдставлСниС Ρ€Π°Π·ΠΌΠ΅Ρ€Π° ΠΈ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ. НапримСр, Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 2048 Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΎ ΠΊΠ°ΠΊ «2 Kb». ПанСль Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ числа большиС 1000 добавляя ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ суффикс Π²ΠΏΠ»ΠΎΡ‚ΡŒ Π΄ΠΎ Tb. ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ ΠΎΠΊΡ€ΡƒΠ³Π»Π΅Π½ΠΈΠ΅ Π΄ΠΎ Π΄Π²ΡƒΡ… Π·Π½Π°ΠΊΠΎΠ² послС запятой, Π²Ρ‚ΠΎΡ€ΠΎΠΉ Π½Π΅ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Ссли это ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ ΠΏΠΎΡ‚Π΅Ρ€Π΅ точности.

Convert выполняСтся послС выполнСния Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ-Π²Π°Π»ΠΈΠ΄Π°Ρ‚ΠΎΡ€Π°

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ required

Если Ρ€Π°Π²Π½ΠΎ «yes», Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ поля Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ пустым.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ save

Если Ρ€Π°Π²Π½ΠΎ «yes», панСль Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°Ρ‚ΡŒ послСднСС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Π²Π²Π΅Π΄Π΅Π½Π½ΠΎΠ΅ Π² этом ΠΏΠΎΠ»Π΅ ΠΏΡ€ΠΈ создании Π½ΠΎΠ²ΠΎΠ³ΠΎ элСмСнта (ΠΊΠΎΠ³Π΄Π° elid пуст) ΠΈ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Ρ‚ΡŒ Π΅Π³ΠΎ ΠΊΠ°ΠΊ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ. Если Ρ€Π°Π²Π½ΠΎ «always», панСль Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°Ρ‚ΡŒ послСднСС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Π΄Π°ΠΆΠ΅ Ссли elid ΠΈΠΌΠ΅Π΅Ρ‚ Π½Π΅ пустой.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ setvalues

Если Ρ€Π°Π²Π½ΠΎ «yes», ΠΏΡ€ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ этого поля Π½Π° сСрвСр Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒΡΡ запрос со значСниями всСх ΠΏΠΎΠ»Π΅ΠΉ ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ sv_field, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ записано имя измСнившСгося поля. Π’ качСствС ΠΎΡ‚Π²Π΅Ρ‚Π° Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ список Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ для ΠΏΠΎΠ»Π΅ΠΉ ΠΈ содСрТимоС списков (slist), ΠΊΠ°ΠΊ ΠΏΡ€ΠΈ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΈΠΈ Ρ„ΠΎΡ€ΠΌΡ‹. ВсС ΠΏΠ΅Ρ€Π΅Π΄Π°Π½Π½Ρ‹Π΅ значСния Π±ΡƒΠ΄ΡƒΡ‚ подставлСны Π² Ρ„ΠΎΡ€ΠΌΡƒ.

Если Ρ€Π°Π²Π½ΠΎ «final», Ρ‚ΠΎ ΠΏΡ€ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ прСсСтом поля с Π΄Ρ€ΡƒΠ³ΠΈΠΌ прСсСтом, Π½Π° этом ΠΏΠΎΠ»Π΅ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΡΡ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ setvalues.

Если Ρ€Π°Π²Π½ΠΎ Ρ†ΠΈΡ„Ρ€Π΅, Ρ‚ΠΎ setvalues Π±ΡƒΠ΄Π΅Ρ‚ ΡΡ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ с ΠΏΠ΅Ρ€ΠΈΠΎΠ΄ΠΈΡ‡Π½ΠΎΡΡ‚ΡŒΡŽ Π² эту Ρ†ΠΈΡ„Ρ€Ρƒ сСкунд.

Если Ρ€Π°Π²Π½ΠΎ blocking, Ρ‚ΠΎ Ρ„ΠΎΡ€ΠΌΠ° Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Π½Π° для ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, ΠΏΠΎΠΊΠ° Π½Π΅ ΠΏΡ€ΠΈΠ΄Π΅Ρ‚ ΠΎΡ‚Π²Π΅Ρ‚ ΠΎΡ‚ ΠΏΠ°Π½Π΅Π»ΠΈ.

По setvalues ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ:

  • Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ readonly, для этого Π½Π°Π΄ΠΎ ΠΎΡ‚Π΄Π°Ρ‚ΡŒ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ readonly=yes Π² ΡƒΠ·Π»Π΅ значСния поля, для присвоСния Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π°, Π»ΠΈΠ±ΠΎ readonly=no, для снятия Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π°
  • ΠΊΠ½ΠΎΠΏΠΊΠΈ (<button>), для этого Π² doc Π½ΡƒΠΆΠ½ΠΎ ΠΎΡ‚Π΄Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ (/doc/buttons/button)
  • Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ mask, для этого Π½Π°Π΄ΠΎ ΠΎΡ‚Π΄Π°Ρ‚ΡŒ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ mask=»NEW_MASK» Π² ΡƒΠ·Π»Π΅ значСния поля
  • Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ min/max для элСмСнта slider
  • прСфикс поля, для этого Π½Π°Π΄ΠΎ ΠΎΡ‚Π΄Π°Ρ‚ΡŒ ΡƒΠ·Π΅Π» <NAME_INPUT_prefix> с Π½ΠΎΠ²Ρ‹ΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ прСфикса
  • значСния списка Π½Π° Ρ„ΠΎΡ€ΠΌΠ΅
  • список Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ сСлСкта, ΠΌΡƒΠ»ΡŒΡ‚ΠΈΡΠ΅Π»Π΅ΠΊΡ‚Π°
  • Π½ΠΎΠ²Ρ‹Π΅ сообщСния для запроса

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ securedΒ 

Если Ρ€Π°Π²Π½ΠΎ «yes» ΠΈ Π±Ρ‹Π»Π° авторизация ΠΏΠΎ COOKIE ΠΈ запрос Π½Π΅ ΠΈΠΌΠ΅Π» Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° Referer, эти поля ΠΈ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ ΠΈΠΌ Π΄Π°Π½Π½Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ ΡƒΠ΄Π°Π»Π΅Π½Ρ‹ ΠΈΠ· ΠΎΡ‚Π²Π΅Ρ‚Π°Β 

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ focus

ΠŸΡ€ΠΈΠ½ΡƒΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ устанавливаСт фокус Π½Π° элСмСнтС 

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ source

Π”ΠΎΠ»ΠΆΠ΅Π½ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ запрос ΠΊ ΠΏΠ°Π½Π΅Π»ΠΈ управлСния. Если Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ для поля Π²Π²ΠΎΠ΄Π° Π½Π΅ Π±Ρ‹Π»ΠΎ установлСно Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ явно, ΠΎΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ взято ΠΈΠ· Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² запроса 

элСмСнт if

для всСх ΠΏΠΎΠ»Π΅ΠΉ ΠΊΡ€ΠΎΠΌΠ΅ slider. ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ см. сокрытиС ΠΏΠΎΠ»Π΅ΠΉ ΠΈ Π²ΠΊΠ»Π°Π΄ΠΎΠΊΒ 

элСмСнт else

для всСх ΠΏΠΎΠ»Π΅ΠΉ ΠΊΡ€ΠΎΠΌΠ΅ slider.Β ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ см. сокрытиС ΠΏΠΎΠ»Π΅ΠΉ ΠΈ Π²ΠΊΠ»Π°Π΄ΠΎΠΊ

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ input

Input ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для создания тСкстовых ΠΏΠΎΠ»Π΅ΠΉ, Ρ„Π»Π°ΠΆΠΊΠΎΠ² ΠΈ ΠΏΠΎΠ»Π΅ΠΉ Π²Ρ‹Π±ΠΎΡ€Π° Ρ„Π°ΠΉΠ»Π°.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ type

Π’ΠΈΠΏ поля. ΠœΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ значСния text, checkbox, password, file, hidden.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ checkpasswd

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠΈΡ‚ имя поля, с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ сравниваСтся Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ. Если значСния Π½Π΅ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡŽΡ‚ β€” Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π²Π΅Π΄Π΅Π½ΠΎ сообщСниС ΠΎ Π½Π΅ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΡ… паролях.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ genpasswd

Π‘ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½Π° ΠΊΠ½ΠΎΠΏΠΊΠ° Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ пароля, для поля Ρ‚ΠΈΠΏΠ° password, Π±Π΅Π· подтвСрТдСния.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ safevalue

Π’ качСствС значСния Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ ΡƒΠΊΠ°Π·Π°Π½ΠΎ имя ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°. Если этот ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ Π±Ρ‹Π» ΠΏΠ΅Ρ€Π΅Π΄Π°Π½, ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΈΠ»ΠΈ провСряСтся программистом (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€: Π·Π°ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ пароля). Π’ этом случаС, для основного ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° (имя ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Π½ΠΎ Π² Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π΅ @name) Π½ΠΈΠΊΠ°ΠΊΠΈΡ… ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΠΊ Π½Π΅ выполняСтся

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ date

Если Π·Π°Π΄Π°Π½ΠΎ, ΠΊ полю Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΈΠΊΡ€Π΅ΠΏΠ»Π΅Π½Π° ΠΊΠ½ΠΎΠΏΠΊΠ° Π²Ρ‹Π·ΠΎΠ²Π° калСндаря. Волько для type=»text». Если Ρ€Π°Π²Π½ΠΎ month, Ρ‚ΠΎ ΠΊΠ°Π»Π΅Π½Π΄Π°Ρ€ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для Π²Ρ‹Π±ΠΎΡ€Π° Π³ΠΎΠ΄Π° ΠΈ мСсяца.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ oncesyncfield

ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ совмСстно с @date, ΠΏΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ Π΄Π°Ρ‚Ρ‹ Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°Π΄Π°Π½ΠΎ Ρ‚ΠΎ ΠΆΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ Π² Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π΅ ΠΏΠΎΠ»Π΅, Ссли ΠΎΠ½ΠΎ пусто

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ maxlength

Максимальная длина поля.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ unlimit

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊ полю ΠΊΠ½ΠΎΠΏΠΊΡƒ установки бСсконСчного значСния. Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ бСсконСчности пСрСдаётся Π² качСствС значСния этому Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Ρƒ.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ width

Π¨ΠΈΡ€ΠΈΠ½Π° поля.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ zoom

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π» разворачивания тСкстового поля Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎ Π΄ΠΎ Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ количСства строк. НапримСр: zoom=»5″. ΠŸΡ€ΠΈ этом Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ поля разбиваСтся ΠΏΠΎ ΠΏΡ€ΠΎΠ±Π΅Π»Π°ΠΌ ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Π΅ части Ρ€Π°Π·ΠΌΠ΅Ρ‰Π°ΡŽΡ‚ΡΡ Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… строках поля. Π’ этом случаС Π²Π°Π»ΠΈΠ΄Π°Ρ‚ΠΎΡ€ примСняСтся для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ значСния ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ duplicate

ΠŸΡ€ΠΈΠΌΠ΅Π½ΡΠ΅Ρ‚ΡΡ совмСстно с Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠΌ zoom. Если Ρ€Π°Π²Π½ΠΎ «yes», Π²Π°Π»ΠΈΠ΄Π°Ρ‚ΠΎΡ€ пропускаСт ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΡŽΡ‰ΠΈΠ΅ΡΡ значСния (ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΡŽΡ‰ΠΈΠ΅ΡΡ значСния Π·Π°ΠΏΡ€Π΅Ρ‰Π΅Π½Ρ‹).

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ check

Имя Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ-Π²Π°Π»ΠΈΠ΄Π°Ρ‚ΠΎΡ€Π° , для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ значСния Π΄Π°Π½Π½ΠΎΠ³ΠΎ поля. Для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ/ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²ΠΊΠΈ значСния Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π·Π²Π°Π½Π° функция check.<имя>, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΠ΅Ρ€Π΅Π΄Π°Π½Ρ‹ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹: value β€” Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ поля, name β€” имя поля, args β€” Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π° checkargs, funcname β€” имя Π²Ρ‹Π·Π²Π°Π½Π½ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. Ѐункция Π΄ΠΎΠ»ΠΆΠ½Π° Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ Π½ΠΎΠ²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² тэгС <value/> ΠΈΠ»ΠΈ тэг error β€” с описаниСм ошибки.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ checkargs

Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ для Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ Π² Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π΅ check.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ prefix

Если Π·Π°Π΄Π°Π½ΠΎ, Ρ‚ΠΎ Ρƒ поля Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒΡΡ прСфикс. Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ прСфикса задаСтся Π½ΠΎΠ΄ΠΎΠΉ <«ΠΈΠΌΡ поля»prefix>

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ plainhint

ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅Ρ‚ ΠΏΠΎΠ΄ элСмСнтом тСкстовоС описаниС, для ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ элСмСнта. ОписаниС бСрСтся ΠΈΠ· сообщСний Π»ΠΎΠΊΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ с ΠΈΠΌΠ΅Π½Π΅ΠΌ hint_CONTROLNAME_VALUE, Π³Π΄Π΅ VALUE β€” Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ элСмСнта для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒΡΡ это тСкстовоС описаниС. (Волько для Ρ‚ΠΈΠΏΠ° checkbox)

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ img

Волько для Ρ‚ΠΈΠΏΠ° checkbox. ΠžΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ, ΡƒΠΊΠ°Π·Π°Π½Π½ΡƒΡŽ Π² Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π΅, ΠΏΠ΅Ρ€Π΅Π΄ Ρ„Π»Π°ΠΆΠΊΠΎΠΌ.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ accept

Волько для Ρ‚ΠΈΠΏΠ° file. Нативный html Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚. http://htmlbook.ru/html/input/accept

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ maxsize

Волько для Ρ‚ΠΈΠΏΠ° file. Π”Π΅Π»Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅, Π½Π° ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π°Π·ΠΌΠ΅Ρ€ Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅ΠΌΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π°. Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π° Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ Π·Π°Π΄Π°Π½ΠΎ Π² Π±Π°ΠΉΡ‚Π°Ρ…. Π‘ΠΎΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅ Π»ΠΎΠΊΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ для отобраТСния ошибки с максимально допустимым Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ Ρ„Π°ΠΉΠ»Π° бСрСтся ΠΈΠ· maxsize_FIELDNAME.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ mask

Волько для поля Ρ‚ΠΈΠΏΠ° text. МоТно Π·Π°Π΄Π°Ρ‚ΡŒ маску Π²Π²ΠΎΠ΄Π°, Π² Ρ‚Π΅ΠΌΠ΅ orion ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° https://github.com/RobinHerbots/jquery.inputmask . Π’Π°ΠΊ ΠΆΠ΅ маску Π²Π²ΠΎΠ΄Π° ΠΌΠΎΠΆΠ½ΠΎ ΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΏΠΎ setvalues, смотрится Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ mask.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ mixed

Если Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ «hide», ΠΏΠΎΠ»Π΅ Π±ΡƒΠ΄Π΅Ρ‚ скрыто ΠΏΡ€ΠΈ Π³Ρ€ΡƒΠΏΠΏΠΎΠ²ΠΎΠΌ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ, Ссли значСния Π² этом ΠΏΠΎΠ»Π΅ Ρ€Π°Π·Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ для Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… записСй

Π’Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠΉ список (элСмСнт select)

Select ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для создания Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΡ… списков ΠΈ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»Π΅ΠΉ

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ type

Π’ΠΈΠΏ select’Π°, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для вставки ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»Π΅ΠΉ Π² Ρ„ΠΎΡ€ΠΌΡƒ β€” Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ type=»radio», ΠΌΡƒΠ»ΡŒΡ‚ΠΈΡΠ΅Π»Π΅ΠΊΡ‚Π° β€” Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ type=»multiple», ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»Ρ с ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ°ΠΌΠΈ β€” Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ type=»radioimg», список с Π°Π²Ρ‚ΠΎΠ΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ β€” Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ type=»autocomplete». Если Π½Π΅ ΡƒΠΊΠ°Π·Π°Π½, Π±ΡƒΠ΄Π΅Ρ‚ создан Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠΉ список.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ inline

ΠŸΠΎΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»ΠΈ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΠΎ, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для type=»radio». Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π° ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ максимальноС количСство Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ select, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΎ. Если список содСрТит большСС количСство Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, ΠΎΠ½ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ Π² ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠΉ список.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ depend

Если Π·Π°Π΄Π°Π½ΠΎ, ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ этого списка Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°Π²ΠΈΡΠ΅Ρ‚ΡŒ ΠΎΡ‚ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ значСния Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ списка, имя ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Π½ΠΎ Π² качСствС значСния этому Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Ρƒ. depend ΠΎΡ‚ Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΡ… списков Ρ‚ΠΈΠΏΠ° multiple ΠΏΠΎΠΊΠ° Π½Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ sort

Π—Π°Π΄Π°Π΅Ρ‚ Ρ‚ΠΈΠΏ сортировки. Π’ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Π΅ значСния: alpha (алфавитная сортировка; ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ), calpha (рСгистронСзависимая алфавитная сортировка), digit (сортировка Π² порядкС числового возрастания), version (сортировка вСрсий ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния) ΠΈ ip (сортировка IP-адрСсов).

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ sorted

ΠžΡ‚ΡΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎ описанию Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ. Π’ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Π΅ значСния: asc (Π² прямом порядкС), desc (Π² ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΌ порядкС). Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ° происходит ΠΏΠΎ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΡ‹ΠΌ значСниям.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ required

Для Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π³ΠΎ списка Ρ‚ΠΈΠΏΠ° multiple Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Π²Ρ‹Π±ΠΎΡ€Π° хотя Π±Ρ‹ ΠΎΠ΄Π½ΠΎΠ³ΠΎ значСния. Для ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² β€” Π½ΠΈΠΊΠ°ΠΊ Π½Π΅ влияСт Π½Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ maxselect

Волько для списка Ρ‚ΠΈΠΏΠ° multilple, Π·Π°Π΄Π°Π΅Ρ‚ максимальноС количСство Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹Ρ… элСмСнтов.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ source

Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠΈ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΠΎΠ»Π΅ΠΉ Π²Π²ΠΎΠ΄Π°, для select ΠΈΠ· ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ источника бСрСтся Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Π½ΠΎ ΠΈ список Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ. Π’ качСствС источника ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹ΡΡ‚ΡƒΠΏΠ°Ρ‚ΡŒ другая Ρ„ΠΎΡ€ΠΌΠ°, Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°ΡŽΡ‰Π°Ρ slist ΠΈΠ»ΠΈ список. Π’ случаС, Ссли это список, список Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π±ΡƒΠ΄Π΅Ρ‚ построСн ΠΈΠ· ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ с ΠΈΠΌΠ΅Π½Π΅ΠΌ key ΠΈ keyname (Ссли ΠΎΠ½ Π·Π°Π΄Π°Π½).

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ plainhint

ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅Ρ‚ ΠΏΠΎΠ΄ элСмСнтом тСкстовоС описаниС, для ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ элСмСнта. ОписаниС бСрСтся ΠΈΠ· сообщСний Π»ΠΎΠΊΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ с ΠΈΠΌΠ΅Π½Π΅ΠΌ hint_CONTROLNAME__VALUE, Π³Π΄Π΅ VALUE β€” Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ элСмСнта для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒΡΡ это тСкстовоС описаниС.

ЗначСния

Бписок Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π±ΡƒΠ΄Π΅Ρ‚ взят ΠΈΠ· тэга <slist name=»ΠΈΠΌΡ select»/>, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ сформирован панСлью ΠΏΡ€ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ get запроса. НапримСр:

<slist name="lang">
  <msg>ru</msg>
  <val key="en">English</val>
</slist>

Бписок lang Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ 2 значСния: ru ΠΈ en. ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΠ°Ρ строка для тэгов <msg> (Π² Π΄Π°Π½Π½ΠΎΠΌ случаС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅: ru) Π±ΡƒΠ΄Π΅Ρ‚ взята ΠΈΠ· ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΠ²ΡƒΡŽΡ‰Π΅Π³ΠΎ сообщСния , Π° для en Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΎ English. Для совмСстимости с сообщСниями для Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ столбцов списков, Π²Π½Π°Ρ‡Π°Π»Π΅ провСряСтся сообщСниС с ΠΈΠΌΠ΅Π½Π΅ΠΌ <имя select>_<Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ тэга msg>, Ссли Ρ‚Π°ΠΊΠΎΠ²ΠΎΠ΅ Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½ΠΎ, бСрСтся сообщСниС с ΠΈΠΌΠ΅Π½Π΅ΠΌ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ тэга msg (ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ для совмСстимости, Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ прСфиксы Π²Π°Ρ€ΠΈΠ°Π½Ρ‚).

Для тэгов Π²Π½ΡƒΡ‚Ρ€ΠΈ <slist> (<val> ΠΈΠ»ΠΈ <msg>) Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Ρ‹:

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ key

ΠŸΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ‚ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅Π΄Π°Π½ΠΎ ΠΏΠ°Π½Π΅Π»ΠΈ ΠΏΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ этого ΠΏΡƒΠ½ΠΊΡ‚Π°, Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС Π±ΡƒΠ΄Π΅Ρ‚ использовано содСрТимоС тэга

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ depend

Π—Π°Π΄Π°Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΈΠ· Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ списка. Π”Π°Π½Π½Ρ‹ΠΉ ΠΏΡƒΠ½ΠΊΡ‚ Π±ΡƒΠ΄Π΅Ρ‚ доступСн Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ссли Π² Π±Π°Π·ΠΎΠ²ΠΎΠΌ спискС Π²Ρ‹Π±Ρ€Π°Π½ΠΎ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅. Если depend Π½Π΅ Π·Π°Π΄Π°Π½, ΠΏΡƒΠ½ΠΊΡ‚ Π±ΡƒΠ΄Π΅Ρ‚ доступСн Π²Π½Π΅ зависимости ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ Π²Ρ‹Π±Ρ€Π°Π½ΠΎ Π² Π±Π°Π·ΠΎΠ²ΠΎΠΌ спискС

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ priority

Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ β€” Ρ†Π΅Π»ΠΎΠ΅ число, Π·Π°Π΄Π°Π΅Ρ‚ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚ для сортировки. ЗначСния Π±ΡƒΠ΄ΡƒΡ‚ отсортированы Π² порядкС возрастания ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Π°, Π° ΡƒΠΆΠ΅ ΠΏΠΎΡ‚ΠΎΠΌ Π² Ρ‚ΠΎΠΌ порядкС, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ установлСн Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π°ΠΌΠΈ @sort ΠΈ @sorted ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ поля Π²Π²ΠΎΠ΄Π°

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ img

Π—Π°Π΄Π°Π΅Ρ‚ имя ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ ΠΈΠ· Ρ‚Π΅ΠΌΡ‹, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π½ΡƒΠΆΠ½ΠΎ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒ Π½Π°ΠΏΡ€ΠΎΡ‚ΠΈΠ² значСния. Волько для ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠ³ΠΎ select ΠΈ type=»radioimg»

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ image

Π—Π°Π΄Π°Π΅Ρ‚ ΠΏΡƒΡ‚ΡŒ Π΄ΠΎ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ Π²Π½Π΅ Ρ‚Π΅ΠΌΡ‹, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π½ΡƒΠΆΠ½ΠΎ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒ Π½Π°ΠΏΡ€ΠΎΡ‚ΠΈΠ² значСния. Волько для ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠ³ΠΎ select ΠΈ type=»radioimg»

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ width

Π—Π°Π΄Π°Π΅Ρ‚ ΡˆΠΈΡ€ΠΈΠ½Ρƒ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΠΎΠΉ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ с Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠΌ image.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ height

Π—Π°Π΄Π°Π΅Ρ‚ высоту ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΠΎΠΉ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ с Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠΌ image.

БвязанныС списки

Часто Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ ситуация, ΠΊΠΎΠ³Π΄Π° содСрТимоС ΠΎΠ΄Π½ΠΎΠ³ΠΎ списка Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π·Π°Π²ΠΈΡΠ΅Ρ‚ΡŒ ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ Π±Ρ‹Π»ΠΎ Π²Ρ‹Π±Ρ€Π°Π½ΠΎ Π² Π΄Ρ€ΡƒΠ³ΠΎΠΌ. Π’ CORE это Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ посрСдством Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π° depend. НапримСр Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ компанию ΠΈ Π½Π΅ΠΊΠΈΠΉ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΠ½Π° выпускаСт. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ это ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

<metadata name="some_form" type="form">
  <form>
    <field name="company">
      <select name="company"/>
    </field>
    <field name="product">
      <select name="product" depend="company"/>
    </field>
  </form>
</metadata>

<slist name="company">
  <val>Canon</val>
  <val>Nikon</val>
</slist>

<slist name="product">
  <val depend="Canon">EOS 1100D</val>
  <val depend="Canon">EOS 5D Mark III</val>
  <val depend="Nikon">D800</val>
  <val depend="Nikon">D4</val>
</slist>

Π’ этом случаС ΠΏΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ company=Canon Π±ΡƒΠ΄ΡƒΡ‚ доступны для Π²Ρ‹Π±ΠΎΡ€Π° ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Ρ‹: EOS 1100D ΠΈ EOS 5D Mark III. А ΠΏΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ Nikon: D800 ΠΈ D4.

Бписок с Π°Π²Ρ‚ΠΎΠ΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ

Бписок с Π°Π²Ρ‚ΠΎΠ΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Ρ‡Π΅Ρ€Π΅Π· ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ прСсСтов. ΠŸΡ€ΠΈ ΠΊΠ»ΠΈΠΊΠ΅ ΠΏΠΎ полю отправляСтся прСсСт-запрос для получСния Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ списка ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ. ΠŸΡ€ΠΈ Π½Π°Π±ΠΎΡ€Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ тСкста отправляСтся прСсСт-запрос Π½Π° ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ списка Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π½Π°ΠΉΠ΄Π΅Π½Π½Ρ‹Ρ… ΠΏΠΎ Π²Π²Π΅Π΄Π΅Π½Π½Ρ‹ΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ Π΄Π°Π½Π½Ρ‹Ρ…. ΠŸΡ€ΠΈ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠ΅ Ρ„ΠΎΡ€ΠΌΡ‹ всСгда ΠΏΡ€ΠΈΠ»Π΅Ρ‚Π°Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ key ΠΎΡ‚ списка.

ΠœΠ½ΠΎΠ³ΠΎΡΡ‚Ρ€ΠΎΡ‡Π½ΠΎΠ΅ ΠΏΠΎΠ»Π΅ Π²Π²ΠΎΠ΄Π° (элСмСнт textarea)

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ height

Высота поля.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ rows

ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ строк Π² ΠΏΠΎΠ»Π΅ Π²Π²ΠΎΠ΄Π°.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ wrap

Если «off», строки Π½Π΅ Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΠ΅Ρ€Π΅Π½ΠΎΡΠΈΡ‚ΡŒΡΡ.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ quote

ДобавляСт ΠΊΠ½ΠΎΠΏΠΊΡƒ «Ρ†ΠΈΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ».

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ editor

ДобавляСт подсвСтку синтаксиса для поля.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ codelang

ΠŸΠΎΠ΄ΡΠ²Π΅Ρ‚ΠΊΡƒ синтаксиса ΠΊΠ°ΠΊΠΎΠ³ΠΎ языка ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒ.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ texteditor

ДобавляСт WYSIWYG β€” Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ для поля.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ bcolor

Π—Π°Π΄Π°Π΅Ρ‚ Ρ†Π²Π΅Ρ‚ бэкграунда, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€: red, #CCCCCC

ΠŸΡ€ΠΈ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ² стоит ΠΈΠΌΠ΅Ρ‚ΡŒ Π²Π²ΠΈΠ΄Ρƒ, Ρ‡Ρ‚ΠΎ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΏΡ€ΠΈ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠ΅ Ρ„ΠΎΡ€ΠΌΡ‹ всС пСрСносы строк ΠΊΠΎΠ΄ΠΈΡ€ΡƒΡŽΡ‚ΡΡ Π² \r\n http://www.w3.org/TR/REC-html40/interact/forms. html#h-17.13.4

Плагин для WYSIWYG-Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π°

Для WYSIWYG-Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π° tinymce Π΅ΡΡ‚ΡŒ ΠΏΠ»Π°Π³ΠΈΠ½ для вставки макросов. НазываСтся «isp_bill_macro».

Бписок макросов, бСрСтся ΠΈΠ· элСмСнта olist, ΠΏΠΎ ΠΈΠΌΠ΅Π½ΠΈ исходной textarea.

XML:

<olist name="content">
  <val key="<xsl:value-of select='/doc/one'/>">one</val>
  <val key="<xsl:value-of select='/doc/two'/>">two</val>
  <val key="<xsl:value-of select='/doc/three'/>">three</val>
  <val key="<xsl:value-of select='/doc/four'/>">four</val>
</olist>

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Slider

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ для Π²Ρ‹Π±ΠΎΡ€Π° числа ΠΈΠ· ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π°.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ min

Π—Π°Π΄Π°Π΅Ρ‚ Π½ΠΈΠΆΠ½Π΅Π΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ значСния поля. Π­Ρ‚ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΎ, Ρ‡Π΅Ρ€Π΅Π· ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ min тэга, содСрТащСго Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΠΎΠ³ΠΎ поля.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ max

Π—Π°Π΄Π°Π΅Ρ‚ Π²Π΅Ρ€Ρ…Π½Π΅Π΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ значСния поля. Π­Ρ‚ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΎ, Ρ‡Π΅Ρ€Π΅Π· ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ max тэга, содСрТащСго Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΠΎΠ³ΠΎ поля.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ step

Π—Π°Π΄Π°Π΅Ρ‚ шаг слайдСра.

ЗначСния min ΠΈ max Π² дальнСйшСм ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π·Π°Π΄Π°Π½Ρ‹ нСпосрСдствСнно Π² тэгС, содСрТащСм Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ поля. Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ slider с ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ 10 ΠΈ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌ 20 (хотя Π² ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ… Π·Π°Π΄Π°Π½Ρ‹ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ограничСния):

<metadata name="test" type="form">
  <form>
    <field name="field">
      <slider name="sl_field" min="0" max="100"/>
    </field>
  </form>
</metadata>

<sl_field min="10" max="20">15</sl_field>

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ period

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ для Π²Ρ‹Π±ΠΎΡ€Π° ΠΏΠ΅Ρ€ΠΈΠ΄Π° Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ β€” Π΄Π²ΡƒΡ… Π΄Π°Ρ‚ Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ YYYY-MM-DD.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ default

Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ для ΠΏΠ΅Ρ€ΠΈΠΎΠ΄Π°. ΠœΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ значСния: today, currentweek, currentmonth, currentyear, lastday, lastweek, lastmonth, lastyear, nodate.

Π”Π°Π½Π½Ρ‹ΠΉ элСмСнт Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ Π² select ΠΈ Π΄Π²Π° input. Π’Π²Π΅Π΄Π΅Π½Π½Ρ‹Π΅ значСния Π±ΡƒΠ΄ΡƒΡ‚ доступны Π² ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°Ρ… internal_<@name>start ΠΈ internal_<@name>end ΠΈΠ»ΠΈ Ρ‡Π΅Ρ€Π΅Π· IParam, Π² этом случаС прСфикс internal_ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ Π½Π΅ Π½Π°Π΄ΠΎ.

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ list

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ отобраТСния списка Π½Π° Ρ„ΠΎΡ€ΠΌΠ΅

<metadata name="sel.form.basket" type="form" mgr="testmgr" decorated="yes">
  <form>
    <field name="list">
      <list name="list" key="id">
        <col name="image" type="img"/>
        <col name="desc" type="data"/>
        <col name="frommsg" type="msg"/>
        <col name="price" type="data" align="right"/>
        <col name="checkbox" type="control" align="right"/>
        <col name="action" type="button" align="right"/>
      </list>
    </field>
    <buttons/>
  </form>
</metadata>

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ key

ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ строки, Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΏΡ€Π°Π²Π»Π΅Π½ Π² Π²ΠΈΠ΄Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° ΠΏΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΈΠ· этой строки

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ type

Ρ‚ΠΈΠΏ отобраТСния (Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚)

Ρ‚ΠΈΠΏΡ‹ отобраТСния:

  • block β€” ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒ Π² Π²ΠΈΠ΄Π΅ Π±Π»ΠΎΠΊΠΎΠ²
  • table β€” ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒ Π² Π²ΠΈΠ΄Π΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹, Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π±ΡƒΠ΄ΡƒΡ‚ Π±Ρ€Π°Ρ‚ΡŒΡΡ ΠΈΠ· Π»ΠΎΠΊΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹Ρ… сообщСний ΠΏΠΎ ΠΈΠΌΠ΅Π½ΠΈ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ с прСфиксом list_

элСмСнт col

описываСт ΠΊΠΎΠ»ΠΎΠ½ΠΊΡƒ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ списка 

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ type

(элСмСнта col) Π·Π°Π΄Π°Π΅Ρ‚ Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ… ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ

Ρ‚ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ… ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ:

  • data: тСкст ΠΈΠ»ΠΈ html
  • msg: тСкст ΠΈΠ· Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… сообщСний
  • img: ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ°
  • button: ΠΊΠ½ΠΎΠΏΠΊΠ°
  • control: ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ» (ΠΏΠΎΠΊΠ° Ρ‚ΠΎΠ»ΡŒΠΊΠΎ checkbox)


Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ align(элСмСнта col)

Π·Π°Π΄Π°Π΅Ρ‚ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΠΎΠ΅ Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ тСкста, ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ right, center, left

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ width(элСмСнта col)

Π·Π°Π΄Π°Π΅Ρ‚ ΡˆΠΈΡ€ΠΈΠ½Ρƒ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ (Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ указываСтся Π² px, Ρ‚. Π΅. «30px»), для Ρ‚ΠΈΠΏΠ° img это Π΅Ρ‰Π΅ ΠΈ ΡˆΠΈΡ€ΠΈΠ½Π° ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ height(элСмСнта col)

Π·Π°Π΄Π°Π΅Ρ‚ высоту ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для Ρ‚ΠΈΠΏΠ° img

ЗначСния

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠΈΠΌΠΎΠ΅ списка Π±ΡƒΠ΄Π΅Ρ‚ взято ΠΈΠ· тэга <list name=»ΠΈΠΌΡ list»/>

<list name="list">
  <elem>
    <id>2</id>
    <image>/manimg/common/img/mb-sysstat.png</image>
    <desc>Π–Πš ΠœΠΎΠ½ΠΈΡ‚ΠΎΡ€ 17''</desc>
    <price>1238.00 RUB</price>
    <action>
      <button name="edit" type="setvalues"/>
      <button name="delete" type="setvalues"/>
    </action>
  </elem>
</list>

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ tree

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ отобраТСния Π΄Π΅Ρ€Π΅Π²ΠΎ Π²Ρ‹Π±ΠΎΡ€Π°

<metadata name="file.folder" type="form">
  <form>
    <field name="dirlist" fullwidth="yes">
      <tree name="dirlist" rows="20" multiple="yes"/>
    </field>
  </form>
</metadata>

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ rows

Π—Π°Π΄Π°Π΅Ρ‚ высоту Π΄Π΅Ρ€Π΅Π²Π°, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ 20

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ multiple

Π—Π°Π΄Π°Π΅Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π²Ρ‹Π±ΠΎΡ€Π° Π±ΠΎΠ»Π΅Π΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ элСмСнта Π΄Π΅Ρ€Π΅Π²Π°

ЗначСния

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠΈΠΌΠΎΠ΅ списка Π±ΡƒΠ΄Π΅Ρ‚ взято ΠΈΠ· тэга <tlist name=»ΠΈΠΌΡ tree»/>

<tlist name="dirlist">
  <val key="2f" img="p-file-0">
    /
    <tlist>
      <val key="2f62696e" img="p-file-0">bin</val>
      <val key="2f626f6f74" img="p-file-0">boot</val>
      <val key="2f726f6f74" img="p-file-0">
        root
        <tlist>
          <val key="2f726f6f742f2e617567656173" img="p-file-0">. augeas</val>
          <val key="2f726f6f742f2e6361636865" img="p-file-0" collapsed="yes">.cache</val>
          <val key="2f726f6f742f2e636f6e666967" img="p-file-0" collapsed="yes">.config</val>
          <val key="2f726f6f742f2e6c6f63616c" img="p-file-0" collapsed="yes">.local</val>
        </tlist>
      </val>
      <val key="2f72756e" img="p-file-0" collapsed="yes">run</val>
      <val key="2f7362696e" img="p-file-0">sbin</val>
      <val key="2f73656c696e7578" img="p-file-0">selinux</val>
    </tlist>
  </val>
</tlist>

ОписаниС Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠ² элСмСнта val:

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ img

Π·Π°Π΄Π°Π΅Ρ‚ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΏΠ΅Ρ€Π΅Π΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ элСмСнта

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ key

Π·Π°Π΄Π°Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ элСмСнта

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ collapsed

Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ элСмСнт ΠΈΠΌΠ΅Π΅Ρ‚ Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΠ΅ элСмСнты; ΠΏΠΎΠ΄Π³Ρ€ΡƒΠ·ΠΊΠ° Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΡ… элСмСнтов Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΎΠΈΡΡ…ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΏΠΎ срСдствам setvalues, для получСния Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΡ… элСмСнтов Π±ΡƒΠ΄Π΅Ρ‚ послан запрос Π²ΠΈΠ΄Π°: func=FUNC&elid=ELID&plid=PLID&FIELD_NAME=FIELD_VALUE&sv_field=FIELD_NAME&sv_tree=yes, Π³Π΄Π΅ FUNC β€” имя Ρ„-Ρ†ΠΈΠΈ Ρ„ΠΎΡ€ΠΌΡ‹, ELID β€” elid Ρ„ΠΎΡ€ΠΌΡ‹, PLID β€” plid Ρ„ΠΎΡ€ΠΌΡ‹, FIELD_NAME β€” имя Π΄Π΅Ρ€Π΅Π²Π°, FIELD_VALUE β€” Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ элСмСнта

Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΠ²Π½Ρ‹Π΅ поля

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Ρ‚ΠΈΠΏΡ‹ ΠΏΠΎΠ»Π΅ΠΉ слуТат для отобраТСния ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ, Π½ΠΎ Π½Π΅ Π΄Π°ΡŽΡ‚ возмоТности Π΅Ρ‘ рСдактирования.

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ htmldata

ПолС слуТит для отобраТСния HTML-Π΄Π°Π½Π½Ρ‹Ρ…. HTML Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅Π΄Π°Π½ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Ρƒ Π±Π΅Π· всяких ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠΉ.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ chheight

ΠŸΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ высоту htmldata Π·Π° счёт Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ поля Π²Π²ΠΎΠ΄Π° (Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π½ΠΈΠΆΠ΅), id ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Π½ΠΎ Π² качСствС значСния Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π°.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ height

Высота поля.

Π’Ρ‹Π²ΠΎΠ΄ тСкстовой ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ (элСмСнт textdata)

ПолС слуТит для отобраТСния Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ тСкста Π² Ρ„ΠΎΡ€ΠΌΠ΅.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ type

ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ ΠΏΠΎΠ»Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‰Π΅Π΅ Ρ‚ΠΈΠΏ источника Π΄Π°Π½Π½Ρ‹Ρ….

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ warning

Π—Π°Π΄Π°Π΅Ρ‚ красный Ρ†Π²Π΅Ρ‚ тСкста

Π’ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹:

  • msg содСрТимоС Π±ΡƒΠ΄Π΅Ρ‚ взято ΠΈΠ· Π»ΠΎΠΊΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ сообщСния. Имя сообщСния Π±ΡƒΠ΄Π΅Ρ‚ взято ΠΈΠ· Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π° name. (имя field Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΠΎΠ²ΠΏΠ°Π΄Π°Ρ‚ΡŒ с ΠΈΠΌΠ΅Π½Π΅ΠΌ элСмСнта, ΠΈΠ·-Π·Π° особСнностСй отобраТСния Π² Ρ‚Π΅ΠΌΠ΅ sirius )
  • msgdata содСрТимоС Π±ΡƒΠ΄Π΅Ρ‚ взято ΠΈΠ· Π»ΠΎΠΊΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ сообщСния. Имя сообщСния Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Π½ΠΎ ΠΈΠ· тэга, имя ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΡƒΠΊΠ°Π·Π°Π½ΠΎ Π² Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π΅ name.
  • data содСрТимоС Π±ΡƒΠ΄Π΅Ρ‚ взято ΠΈΠ· тэга, имя ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΡƒΠΊΠ°Π·Π°Π½ΠΎ Π² Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π΅ name.

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ img

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² связкС с textdata ΠΈ htmldata, слуТит для Π²Ρ‹Π²ΠΎΠ΄Π° ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ слСва ΠΎΡ‚ элСмСнта.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ width

Π·Π°Π΄Π°Π΅Ρ‚ ΡˆΠΈΡ€ΠΈΠ½Ρƒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ height

Π·Π°Π΄Π°Π΅Ρ‚ высоту ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ img

имя ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ ΠΈΠ· спрайта Ρ‚Π΅ΠΌΡ‹

ΠΏΡƒΡ‚ΡŒ ΠΊ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ΅ указываСтся Π² Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΈ поля. Если ΡƒΠΊΠ°Π·Π°Π½ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ img, Ρ‚ΠΎ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Π±ΡƒΠ΄Π΅Ρ‚ Π±Ρ€Π°Ρ‚ΡŒΡΡ ΠΈΠ· спрайта Ρ‚Π΅ΠΌΡ‹.

<field name="textdata_img">
  <img name="image_field"/>
  <textdata name="textdata_img" type="data"/>
</field>

Π’Ρ‹Π²ΠΎΠ΄ тСкстовой ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ (элСмСнт desc)

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ со связкой input, checkbox ΠΈ slider , слуТит для Π²Ρ‹Π²ΠΎΠ΄Π° Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ, справа ΠΎΡ‚ элСмСнта.

<field name="dummy_name">
  <input type="checkbox" name="checkbox_name"/>
  <desc name="some_name"/>
</field>

Бсылка (элСмСнт link)

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для отобраТСния ссылки Π½Π° Ρ„ΠΎΡ€ΠΌΠ΅.

Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅! ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΠΎΠ΅ имя ссылки Π±ΡƒΠ΄Π΅Ρ‚ Π±Ρ€Π°Ρ‚ΡŒΡΡ ΠΈΠ· сообщСний Π»ΠΎΠΊΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΠΎ ΠΈΠΌΠ΅Π½ΠΈ элСмСнта. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ для отобраТСния ΠΈΠΌΠ΅Π½ΠΈ поля Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΈΠΌΠ΅Ρ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ названия Ρƒ поля ΠΈ элСмСнта, Π»ΠΈΠ±ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ noname поля, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ вовсС.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ target

Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ ссылки (http://htmlbook.ru/html/a/target )

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ internal

Ссли Ρ€Π°Π²Π½ΠΎ yes, Ρ‚ΠΎ ссылка откроСтся ΠΊΠ°ΠΊ Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΠΉ Ρ‚Π°Π± Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΌΠ°Π½Π°Π³Π΅Ρ€Π°

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ newtab

ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ совмСстно с Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠΌ internal, ссылка Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Π° Π² Π½ΠΎΠ²ΠΎΠΌ Ρ‚Π°Π±Π΅ ΠΌΠ°Π½Π°Π³Π΅Ρ€Π°

<metadata type="form">
  <form>
    <field name="link">
     <link name="link" target="_blank"/>
    </field>
  </from>
</metadata>
<link>http://ru.5.ispdoc.com/</link>

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ frame

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для отобраТСния Ρ„Ρ€Π΅ΠΉΠΌΠ°.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ height

Π·Π°Π΄Π°Π΅Ρ‚ высоту элСмСнта

<metadata type="form">
  <form>
    <field name="myframe">
     <frame name="myframe"/>
    </field>
  </from>
</metadata>
<myframe>http://ru. 5.ispdoc.com/</myframe>

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ отобраТСния Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΈ Π΄Π°Ρ‚Ρ‹ datetime

Π‘Π»ΡƒΠΆΠΈΡ‚ для отобраТСния Π΄Π°Ρ‚Ρ‹ ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. Π‘ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π΅ врСмя Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ YYYY-MM-DD HH:MM:SS.

XML:

<metadata type="form">
  <form>
    <field name="mydatetime">
     <datetime name="mydatetime" setvalues="30"/>
    </field>
  </from>
</metadata>
<mydatetime>2014-12-15 10:11:16</mydatetime>

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ name

имя элСмСнта

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ setvalues

врСмя Π²Ρ‹Π·ΠΎΠ²Π° setvsalues Π² сСкундах

НСсколько элСмСнтов Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΏΠΎΠ»Π΅

Π•ΡΡ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒ Π΄Π²Π° элСмСнта Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΏΠΎΠ»Π΅.

Доступны ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠΈ:

  • Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ input (Ρ‚ΠΈΠΏΠ° text) + Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ select
  • Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ input (Ρ‚ΠΈΠΏΠ° text) + Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ link
  • Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ input (Ρ‚ΠΈΠΏΠ° text) + Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ input (Ρ‚ΠΈΠΏΠ° text)
  • Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ input (Ρ‚ΠΈΠΏΠ° text) + Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ input (Ρ‚ΠΈΠΏΠ° checkbox)
  • Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ select + Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ link

Кнопки (сСкция buttons)

ΠŸΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для описания ΠΊΠ½ΠΎΠΏΠΎΠΊ Π½Π° Ρ„ΠΎΡ€ΠΌΠ΅.

По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ выводятся Π΄Π²Π΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ OK ΠΈ ΠžΡ‚ΠΌΠ΅Π½Π°. Но Π΅ΡΡ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΡƒΠ±Ρ€Π°Ρ‚ΡŒ Π»ΡŽΠ±ΡƒΡŽ ΠΈΠ· Π½ΠΈΡ…, Π»ΠΈΠ±ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π΅Ρ‰Π΅ 4-Ρ€Π΅ β€” сброс Ρ„ΠΎΡ€ΠΌΡ‹, Π½Π°Π·Π°Π΄, Π²ΠΏΠ΅Ρ€Π΅Π΄ ΠΈ ΠΊΠ½ΠΎΠΏΠΊΡƒ Π²Ρ‹Π·ΠΎΠ²Π° прСсСта.

Π›ΠΎΠ³ΠΈΠΊΠ° Ρ€Π°Π±ΠΎΡ‚Ρ‹ слСдущая, Ссли сСкции buttons Π½Π΅Ρ‚, Ρ‚ΠΎ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²ΡŽΡ‚ΡΡ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Ρ‹ Ρ„ΠΎΡ€ΠΌΡ‹ @nocancel, @nosubmit ΠΈ Π² зависимости ΠΎΡ‚ Π½ΠΈΡ… выводятся ΠΈΠ»ΠΈ Π½Π΅ выводятся ΠΊΠ½ΠΎΠΏΠΊΠΈ OK ΠΈ ΠžΡ‚ΠΌΠ΅Π½Π°.

Если сСкция buttons сущСствуСт, Ρ‚ΠΎ выводятся ΠΊΠ½ΠΎΠΏΠΊΠΈ описанныС Π² Π½Π΅ΠΉ, Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Ρ‹ Ρ„ΠΎΡ€ΠΌΡ‹ ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΡƒΡŽΡ‚ΡΡ.

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ button

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ описываСт ΠΊΠ½ΠΎΠΏΠΊΡƒ.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ name

имя ΠΊΠ½ΠΎΠΏΠΊΠΈ, ΠΎΡ‚ Π½Π΅Π³ΠΎ зависит надпись Π½Π° ΠΊΠ½ΠΎΠΏΠΊΠ΅, бСрСтся ΠΈΠ· Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… сообщСний ΠΏΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π°, с прСфиксом msg_

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ keepform

ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ совмСстно с Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠΌ type=blank, Ссли Ρ€Π°Π²Π½ΠΎ yes, Ρ‚ΠΎ Π½Π΅ Π·Π°ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ Ρ„ΠΎΡ€ΠΌΡƒ послС ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ type

Ρ‚ΠΈΠΏ ΠΊΠ½ΠΎΠΏΠΊΠΈ, опрСдСляСт ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ func

Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для Ρ‚ΠΈΠΏΠ° cancel, послС закрытия Ρ„ΠΎΡ€ΠΌΡ‹ Π²Ρ‹ Π±ΡƒΠ΄Π΅Ρ‚Π΅ ΠΏΠ΅Ρ€Π΅Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Ρ‹ Π² ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΈΠ· Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π°

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ blocking

Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для Ρ‚ΠΈΠΏΠ° setvalues, ΠΏΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒΡΡ Π»ΠΎΠ°Π΄Π΅Ρ€, ΠΏΠΎΠΊΠ° Π½Π΅ ΠΎΡ‚Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ прСсСтов

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ disabled

ΠΊΠ½ΠΎΠΏΠΊΠ° Π±ΡƒΠ΄Π΅Ρ‚ Π½Π΅Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠΉ

Π’ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹:

  • ok отправляСт Ρ„ΠΎΡ€ΠΌΡƒ
  • cancel Π·Π°ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ Ρ„ΠΎΡ€ΠΌΡƒ
  • reset сбрасываСт значСния Ρ„ΠΎΡ€ΠΌΡ‹ Π½Π° Π΄Π΅Ρ„ΠΎΠ»Ρ‚Π½Ρ‹Π΅
  • next ΠΊΠ½ΠΎΠΏΠΊΠ° для Π²ΠΈΠ·Π°Ρ€Π΄ΠΎΠ², добавляСт ΠΊ Ρ„ΠΎΡ€ΠΌΠ΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ snext=ok
  • back ΠΊΠ½ΠΎΠΏΠΊΠ° для Π²ΠΈΠ·Π°Ρ€Π΄ΠΎΠ², добавляСт ΠΊ Ρ„ΠΎΡ€ΠΌΠ΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ sback=ok
  • blank отправляСт Ρ„ΠΎΡ€ΠΌΡƒ Π² Π½ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ
  • setvalues Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ прСсСт, Π² Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° sv_field отправляСтся имя ΠΊΠ½ΠΎΠΏΠΊΠΈ
  • func ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΠΉ список/Ρ„ΠΎΡ€ΠΌΡƒ, имя Ρ„-Ρ†ΠΈΠΈ указываСтся Π² Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π΅ func

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ xml со всСми Π²ΠΈΠ΄Π°ΠΌΠΈ ΠΊΠ½ΠΎΠΏΠΎΠΊ:

<form . ..>
  <buttons>
    <button name="back" type="back"/>
    <button name="ok" type="ok"/>
    <button name="cancel" type="cancel"/>
    <button name="next" type="next"/>
    <button name="reset" type="reset"/>
    <button name="blank" type="blank"/>
    <button name="setvalues" type="setvalues"/>
  </buttons>
</form>

Π‘ΠΎΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ ΠΏΠΎΠ»Π΅ΠΉ ΠΈ Π²ΠΊΠ»Π°Π΄ΠΎΠΊ (тэги if ΠΈ else)

Web интСрфСйс CORE позволяСт ΡΠΊΡ€Ρ‹Π²Π°Ρ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ элСмСнты Ρ„ΠΎΡ€ΠΌ Π² зависимости ΠΎΡ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π΄Ρ€ΡƒΠ³ΠΈΡ… элСмСнтов. Для этого слуТат Π΄Π²Π° Ρ‚Π΅Π³Π°: if ΠΈ else. Π’ Ρ‚Π΅Π³Π΅ if Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ ΡΡ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ условиС. УсловиС else сработаСт, Ссли Π½Π΅ Π±Ρ‹Π»ΠΎ Π½Π°ΠΉΠ΄Π΅Π½ΠΎ Π½ΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ if с ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ. УсловиС else ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² select ΠΏΠΎΠ»Π΅ΠΉ.

Если Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΏΡ€ΡΡ‚Π°Ρ‚ΡŒ нСсколько ΠΏΠΎΠ»Π΅ΠΉ ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΌΡƒ ΡƒΡΠ»ΠΎΠ²ΠΈΡŽ, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ нСсколько тэгов if с ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹ΠΌ условиСм ΠΈ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π° hide. Или нСсколько тэгов else.

Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠΏΡ€ΡΡ‚Π°Ρ‚ΡŒ ΠΌΠΎΠΆΠ½ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ поля ΠΈ Π²ΠΊΠ»Π°Π΄ΠΊΠΈ описанныС послС. Если вашС ΠΏΠΎΠ»Π΅ находится Π½Π° Π²Ρ‚ΠΎΡ€ΠΎΠΉ Π²ΠΊΠ»Π°Π΄ΠΊΠ΅, Ρ‚ΠΎ, Π² зависимости ΠΎΡ‚ Π΅Π³ΠΎ значСния, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠΊΡ€Ρ‹Π²Π°Ρ‚ΡŒ поля находящиСся Π½Π° этой Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ послС вашСго. Или, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠΊΡ€Ρ‹Π²Π°Ρ‚ΡŒ Π²ΠΊΠ»Π°Π΄ΠΊΠΈ начиная с Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅ΠΉ. Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ сокрытого поля Π½ΠΈΠΊΠ°ΠΊ Π½Π΅ влияСт Π½Π° Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΠΎΠ»Π΅ΠΉ.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ empty

Ссли Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π° Ρ€Π°Π²Π½ΠΎ «yes», if Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΡ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈ пустом Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΈ поля, Ссли «no» β€” ΠΏΡ€ΠΈ нСпустом. Π­Ρ‚ΠΎΡ‚ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² условиях Π²Π½ΡƒΡ‚Ρ€ΠΈ input ΠΏΠΎΠ»Π΅ΠΉ.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ value

Π·Π°Π΄Π°Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ для if условия. Для checkbox Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ этого Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ «on» ΠΈΠ»ΠΈ «off». Π­Ρ‚ΠΎΡ‚ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ нСльзя ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² условиях Π²Π½ΡƒΡ‚Ρ€ΠΈ input ΠΏΠΎΠ»Π΅ΠΉ.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ hide

Π·Π°Π΄Π°Π΅Ρ‚ имя поля Ρ„ΠΎΡ€ΠΌΡ‹ ΠΈΠ»ΠΈ имя Π²ΠΊΠ»Π°Π΄ΠΊΠΈ, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΏΡ€ΡΡ‚Π°Ρ‚ΡŒ.

Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ shadow

Если Π΅Π³ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ€Π°Π²Π½ΠΎ «yes», ΠΏΠΎΠ»Π΅ Ρ„ΠΎΡ€ΠΌΡ‹ Π±ΡƒΠ΄Π΅Ρ‚ Π½Π΅ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ скрыто, Π° лишь сдСлано нСдоступным для измСнСния. ОписаниС этого поля Π±ΡƒΠ΄Π΅Ρ‚ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΎ сообщСниСм с ΠΈΠΌΠ΅Π½Π΅ΠΌ shadow_hint_<имя поля>.

Select Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΡΡ‚Π°Ρ‚ΡŒ элСмСнт Ρ„ΠΎΡ€ΠΌΡ‹ с ΠΈΠΌΠ΅Π½Π΅ΠΌ second, Ссли Π²Ρ‹Π±Ρ€Π°Π½ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ «show first», ΠΈΠ»ΠΈ ΠΏΡ€ΡΡ‚Π°Ρ‚ΡŒ элСмСнт с ΠΈΠΌΠ΅Π½Π΅ΠΌ «first» Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС.

  <select name="list_name">
    <if value="show first" hide="second"/>
    <else hide="first"/>
  </select>

Если Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΏΡ€ΡΡ‚Π°Ρ‚ΡŒ ΠΏΠΎΠ»Π΅ ΠΏΡ€ΠΈ всСх Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… значСниях select ΠΊΡ€ΠΎΠΌΠ΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ β€” Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅:

  <select name="list_name">
    <if value="show first"/>
    <else hide="first"/>
  </select>

Локализация

Для описания сообщСний ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… Ρ„ΠΎΡ€ΠΌΠΎΠΉ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΎΠ΄Π½ΠΎΠΈΠΌΠ΅Π½Π½ΡƒΡŽ ΡΠ΅ΠΊΡ†ΠΈΡŽ messages.

НапримСр ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ XML описываСт сообщСния для Ρ„ΠΎΡ€ΠΌΡ‹ просмотра Ρ„ΠΎΠ½ΠΎΠ²Ρ‹Ρ… Π·Π°Π΄Π°Π½ΠΈΠΉ:

<?xml version="1.0"?>
<mgrdata>
  <lang name="ru">
    <messages name="longtask.edit">
        <msg name="title">Π€ΠΎΠ½ΠΎΠ²ΠΎΠ΅ Π·Π°Π΄Π°Π½ΠΈΠ΅</msg>
        <msg name="hint_name">Имя скрипта ΠΈΠ»ΠΈ исполняСмого Ρ„Π°ΠΉΠ»Π°</msg>
        <msg name="hint_queue">Имя ΠΎΡ‡Π΅Ρ€Π΅Π΄ΠΈ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π±Ρ‹Π»ΠΎ ΠΏΠΎΠΌΠ΅Ρ‰Π΅Π½ΠΎ Π·Π°Π΄Π°Π½ΠΈΠ΅</msg>
        <msg name="hint_id">ΠŸΠΎΡ€ΡΠ΄ΠΊΠΎΠ²Ρ‹ΠΉ Π½ΠΎΠΌΠ΅Ρ€ задания Π² ΠΎΡ‡Π΅Ρ€Π΅Π΄ΠΈ</msg>
        <msg name="hint_pidfile">ΠŸΡƒΡ‚ΡŒ Π΄ΠΎ PID-Ρ„Π°ΠΉΠ»Π°</msg>
        <msg name="hint_params">Бписок ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² задания</msg>
        <msg name="name">Имя скрипта</msg>
        <msg name="pidfile">PID-Ρ„Π°ΠΉΠ»</msg>
        <msg name="queue">Имя ΠΎΡ‡Π΅Ρ€Π΅Π΄ΠΈ</msg>
        <msg name="id">НомСр Π² ΠΎΡ‡Π΅Ρ€Π΅Π΄ΠΈ</msg>
        <msg name="depends">Зависимости</msg>
        <msg name="startdate">ВрСмя запуска</msg>
        <msg name="enddate">ВрСмя Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ</msg>
        <msg name="params">Π”ΠΎΠΏ.  информация</msg>
    </messages>
  </lang>
</mgrdata>

Π­Ρ‚ΠΈ сообщСния ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

  • Для Π²ΠΊΠ»Π°Π΄ΠΎΠΊ ΠΈ ΠΏΠΎΠ»Π΅ΠΉ описаниС бСрСтся ΠΈΠ· ΠΎΠ΄Π½ΠΎΠΈΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ тэга <msg>.
  • ΠŸΡ€ΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ Π½Π° имя поля появляСтся подсказка. Π­Ρ‚Π° подсказка бСрСтся ΠΈΠ· <msg> с ΠΈΠΌΠ΅Π½Π΅ΠΌ «hint_<имя поля>»
  • Для тСкстовых ΠΏΠΎΠ»Π΅ΠΉ Π²Π²ΠΎΠ΄Π° ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π΄Π°Ρ‚ΡŒ Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒ (placeholder) β€” тСкст, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒΡΡ Π² ΠΏΠΎΠ»Π΅, ΠΈΠΌΠ΅ΡŽΡ‰Π΅ΠΌ пустоС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅. Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒ бСрСтся ΠΈΠ· <msg> с ΠΈΠΌΠ΅Π½Π΅ΠΌ «placeholder_<имя поля>»
  • Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Ρ„ΠΎΡ€ΠΌΡ‹:
    • для new запросов бСрСтся ΠΈΠ· Ρ‚Π΅Π³Π° <msg> с ΠΈΠΌΠ΅Π½Π΅ΠΌ «title_new» ΠΈΠ»ΠΈ с ΠΈΠΌΠ΅Π½Π΅ΠΌ «title», Ссли <msg name=»title_new»> Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½.
    • для edit запросов бСрСтся ΠΈΠ· <msg> с ΠΈΠΌΠ΅Π½Π΅ΠΌ «title». ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π² ΠΊΠΎΠ½Π΅Ρ† сообщСния Π±ΡƒΠ΄Π΅Ρ‚ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΎ содСрТимоС тэга, имя ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΡƒΠΊΠ°Π·Π°Π½ΠΎ Π² Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π΅ @title тэга form . Или ΠΈΠ· тэга <elid>, Ссли Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ @title для form Π½Π΅ Π·Π°Π΄Π°Π½.

Если ΠΊΠ°ΠΊΠΎΠ΅-Ρ‚ΠΎ ΠΈΠ· Π²Ρ‹ΡˆΠ΅ΠΏΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½Π½Ρ‹Ρ… сообщСний Π½Π΅ Π·Π°Π΄Π°Π½ΠΎ явно, CORE пытаСтся Π½Π°ΠΉΡ‚ΠΈ Π΅Π³ΠΎ Π² сСкции messages с ΠΈΠΌΠ΅Π½Π΅ΠΌ common.

  • для ΠΊΠ½ΠΎΠΏΠΊΠΈ Ok ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ сообщСниС с ΠΈΠΌΠ΅Π½Π΅ΠΌ «msg_ok»
  • для ΠΊΠ½ΠΎΠΏΠΊΠΈ Cancel ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ сообщСниС с ΠΈΠΌΠ΅Π½Π΅ΠΌ «msg_cancel»

ΠŸΠΎΠ»Π½Ρ‹ΠΉ список сообщСний ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ… ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π² сСкции messages с ΠΈΠΌΠ΅Π½Π΅ΠΌ form. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠ΅Ρ€Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ любоС ΠΈΠ· Π½ΠΈΡ… Π² сообщСниях вашСй Ρ„ΠΎΡ€ΠΌΡ‹.

НовыС поля Π²Π²ΠΎΠ΄Π° | Π£Ρ‡Π΅Π±Π½ΠΈΠΊ HTML5

Π§Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹ΡΡΠ½ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΈΠΌΠ΅Π½Π½ΠΎ, Π΄Π°Π²Π°ΠΉΡ‚Π΅ рассмотрим Ρ‚ΠΈΠΏΠΈΡ‡Π½ΡƒΡŽ Ρ„ΠΎΡ€ΠΌΡƒ, ΡΠ΄Π΅Π»Π°Π½Π½ΡƒΡŽ с использованиСм Π½ΠΎΠ²ΠΎΠ³ΠΎ инструмСнтария.

<form>

Name:

<input required type = Β«textΒ»>

Email:

<input multiple type = Β«emailΒ»>

Phone:

<input pattern = [7(a0-9{)0-9]{3}7type Β = Β Β«telΒ»/>

Page:

<input type = Β«urlΒ»/>

Login:

<input placeholder = Β«Alphabetic symbols onlyΒ» autocomplete = Β«noΒ» type = Β«textΒ»/> </form>

<input type=Β»textΒ» list=Β»mydataΒ» >

<datalist id=Β»mydataΒ»>

<option label=Β»(Π‘yΠΏΠ΅Ρ€ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ)Β» value=Β»AdminΒ»>

<option label=Β»(ΠŸΠΎΡΠ΅Ρ‚ΠΈΡ‚Π΅Π»ΡŒ)Β» value=Β»UserΒ»>

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΈΠ΄Π΅Ρ‚ΡŒ Π½Π° рис. 14.

Рис. 14. Π€ΠΎΡ€ΠΌΡ‹ с Π½ΠΎΠ²Ρ‹ΠΌΠΈ полями

Π‘ самого Π½Π°Ρ‡Π°Π»Π° Π½Π°Π΄ΠΎ ΠΏΡ€ΠΈΠ½ΡΡ‚ΡŒ ΠΊΠ°ΠΊ Π΄Π°Π½Π½ΠΎΡΡ‚ΡŒ ΠΎΠ΄Π½Ρƒ ΠΏΡ€ΠΎΡΡ‚ΡƒΡŽ Π²Π΅Ρ‰ΡŒ. Атрибут type Ρ‚Π΅Π³Π° input большС Π½Π΅ опрСдСляСт внСшнСго Π²ΠΈΠ΄Π° ΠΏΠΎΠ»Π΅ΠΉ Ρ„ΠΎΡ€ΠΌΡ‹. Он просто ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ Π΅Π³ΠΎ Ρ‚ΠΈΠΏ, Π° способ отобраТСния ΠΎΡ‚Π΄Π°Π½ Π½Π° ΠΎΡ‚ΠΊΡƒΠΏ воспроизводитСлям Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠ² ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, Π·Π°Π½ΠΈΠΌΠ°ΡŽΡ‰ΠΈΡ…ΡΡ Π²ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ HTML. ΠŸΠΎΡ‚ΠΎΠΌΡƒ, Π² частности, внСшний Π²ΠΈΠ΄ ΠΏΠΎΠ»Π΅ΠΉ Ρ„ΠΎΡ€ΠΌΡ‹ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΈ просмотрС Π² Ρ€Π°Π·Π½Ρ‹Ρ… Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°Ρ… довольно сильно Ρ€Π°Π·Π½ΠΈΡ‚ΡŒΡΡ. Π­Ρ‚ΠΎ Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ, ΠΈ ΠΏΡƒΡΡ‚ΡŒ это вас Π½Π΅ смущаСт.

<option labelX. ΠŸΡ€ΠΎΡΡ‚ΠΎ ΠΊΠΎΡ‚)” value=”Cat”> </datalist>

</form>

Β 

Ну Π° Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ пробСТимся ΠΏΠΎ Π½ΠΎΠ²Ρ‹ΠΌ элСмСнтам Ρ„ΠΎΡ€ΠΌΡ‹.

ΠŸΠ΅Ρ€Π²ΠΎΠ΅ ΠΏΠΎΠ»Π΅ Π²Ρ€ΠΎΠ΄Π΅ Π½Π΅ прСдставляСт собой Π½ΠΈΡ‡Π΅Π³ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ, Π½ΠΎ, ΠΏΡ€ΠΈΡΠΌΠΎΡ‚Ρ€Π΅Π²ΡˆΠΈΡΡŒ, Ρƒ Π½Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ Π½ΠΎΠ²Ρ‹ΠΉ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ β€” required, ΠΎΠ·Π½Π°Ρ‡Π°ΡŽΡ‰ΠΈΠΉ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ это ΠΏΠΎΠ»Π΅ являСтся ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ для заполнСния. ΠŸΠΎΠΏΡ‹Ρ‚ΠΊΠ° ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡƒ с пустым required-ΠΏΠΎΠ»Π΅ΠΌ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ ΠΏΡ€ΠΎΡ‚ΠΈΠ²ΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΠΈΡŽ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π° (рис. 15).

ПолС c Ρ‚ΠΈΠΏΠΎΠΌ email, ΠΊΠ°ΠΊ Π½Π΅Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ Π΄ΠΎΠ³Π°Π΄Π°Ρ‚ΡŒΡΡ, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΎ для Π²Π²ΠΎΠ΄Π° адрСса элСктронной ΠΏΠΎΡ‡Ρ‚Ρ‹. Π’ΡƒΡ‚ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ синтаксис Π²Π²Π΅Π΄Π΅Π½Π½ΠΎΠ³ΠΎ адрСса ΠΈ ΡΠΈΠ³Π½Π°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈ ошибкС (рис. 16). Атрибут Ρ€ultiple позволяСт ввСсти нСсколько e-mail-адрСсов, раздСляя ΠΈΡ… запятой.

Рис. 15. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Β«ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎΒ» поля

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° валидности заполнСния

Π”Π°Π»Π΅Π΅ слСдуСт ΠΏΠΎΠ»Π΅ Ρ‚ΠΈΠΏΠ° tel. Оно, ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎ, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΎ для Π²Π²ΠΎΠ΄Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π°, Π½ΠΎ с Π½ΠΈΠΌ всС Π½Π΅ΠΌΠ½ΠΎΠΆΠΊΠΎ слоТнСС. По ΠΏΠ΅Ρ€Π²ΠΎΠ½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ΄Π΅Π΅, ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ ΠΏΠΎΠ΄Π²Π΅Π΄Π΅Π½Π½Ρ‹ΠΉ тСкст Π½Π° Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠ΅ соотвСтствиС Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π½ΠΎΠΌΡƒ Π½ΠΎΠΌΠ΅Ρ€Ρƒ.

К слову, с ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° возникновСния всСм извСстной эпидСмии коронавируса – случаи ΠΌΠΎΡˆΠ΅Π½Π½ΠΈΡ‡Π΅ΡΡ‚Π²Π°, связанныС с Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π½Ρ‹ΠΌΠΈ Π·Π²ΠΎΠ½ΠΊΠ°ΠΌΠΈ ΠΈ CMC ΡƒΡ‡Π°ΡΡ‚ΠΈΠ»ΠΈΡΡŒ. Π§Π΅ΠΉ Π½ΠΎΠΌΠ΅Ρ€ Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π° ΠΊΡ‚ΠΎ Π·Π²ΠΎΠ½ΠΈΠ» β€” ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΠ·Π½Π°Ρ‚ΡŒ спСциализированный сСрвис, ΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ·Π½Π°Ρ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ пСрСйдя ΠΏΠΎ ссылкС.

Но сам ΠΏΠΎ сСбС ΠΎΠ½ Π²ΠΎΠΎΠ±Ρ‰Π΅ Π½ΠΈΠΊΠ°ΠΊΠΈΡ… ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠΉ Π½Π° Π²Π²ΠΎΠ΄ Π½Π΅ Π½Π°ΠΊΠ»Π°Π΄Ρ‹Π²Π°Π΅Ρ‚. Π€ΠΎΡ€ΠΌΠ°Ρ‚ΠΎΠ² Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π½Ρ‹Ρ… Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² достаточно, способов ΠΈΡ… Π²Π²ΠΎΠ΄Π° β€” Π΅Ρ‰Π΅ большС, ΠΈ любоС ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ ΠΈΠΌΠ΅Π΅Ρ‚ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠ΅ ΡˆΠ°Π½ΡΡ‹ ΡΡ‚Π°Ρ‚ΡŒ сильной Π³ΠΎΠ»ΠΎΠ²Π½ΠΎΠΉ болью для ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ сайта. Π’Π°ΠΊ, ΠΌΠΎΠΆΠ΅Ρ‚, этот Ρ‚ΠΈΠΏ Π²ΠΎΠΎΠ±Ρ‰Π΅ Π½Π΅ Π½ΡƒΠΆΠ΅Π½? Для ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Ρ… дСсктопов, ΠΌΠΎΠΆΠ΅Ρ‚, ΠΈ Π½Π΅Ρ‚, Π° Π½Π° мобильном устройствС Ρ„Π°ΠΊΡ‚ прСдназначСнности тСкстового поля для Π²Π²ΠΎΠ΄Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π½ΠΎΠ³ΠΎ Π½ΠΎΠΌΠ΅Ρ€Π° ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ интСрфСйсу ΠΏΡ€ΠΈΡΠΏΠΎΡΠΎΠ±ΠΈΡ‚ΡŒΡΡ ΠΏΠΎΠ΄ Π²Π²ΠΎΠ΄. По ΠΊΡ€Π°ΠΉΠ½Π΅ΠΉ ΠΌΠ΅Ρ€Π΅, iPhone ΡƒΠΆΠ΅ прСкрасно Ρ€Π°Π·Π»ΠΈΡ‡Π°Π΅Ρ‚ type=tel (ΠΈΠ»ΠΈ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, e-mail).

Ну Π° ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΡΡ‚ΡŒ Π²Π²ΠΎΠ΄ΠΈΠΌΡ‹Ρ… Ρ†ΠΈΡ„Ρ€ ΠΈΠ»ΠΈ Π²ΠΎΠΎΠ±Ρ‰Π΅ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Π²Π²ΠΎΠ΄Π° ΠΌΠΎΠΆΠ½ΠΎ, Π² случаС нСобходимости, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΌ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠΌ β€” pattern, ΡΠΎΠΏΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠΌ Π²Π²Π΅Π΄Π΅Π½Π½Ρ‹ΠΉ тСкст рСгулярному Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΡŽ. ΠžΠΏΡΡ‚ΡŒ ΠΆΠ΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Ρ‚ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ Ρ„ΠΎΡ€ΠΌΡ‹.

ПолС Ρ‚ΠΈΠΏΠ° url заставляСт Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ произвСсти ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ Π½Π° соотвСтствиС Π²Π²Π΅Π΄Π΅Π½Π½ΠΎΠ³ΠΎ тСкста Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Ρƒ url-адрСса.

Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΠΎΠ»Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ‡Π°Ρ‚Π΅Π»Π΅Π½ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ placeholder. Π’ ΠΏΠΎΠ»Π½ΠΎΠΌ соотвСтствии со своим Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ ΠΎΠ½ содСрТит тСкст, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ отобраТаСтся Π² ΠΏΠΎΠ»Π΅ Π²Π²ΠΎΠ΄Π° Π΄ΠΎ заполнСния (Ρ‡Π°Ρ‰Π΅ всСго это подсказка).

Π’Ρ‚ΠΎΡ€ΠΎΠΉ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ β€” autocomplete β€” являСтся Π΄ΠΎΠ»Π³ΠΎΠΆΠ΄Π°Π½Π½ΠΎΠΉ стандартизациСй повСдСния Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°, Π²ΠΏΠ΅Ρ€Π²Ρ‹Π΅ появившСгося Π΅Ρ‰Π΅ Π² IE 5.5. Autocomplete ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ Π·Π° Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΠ΅ Π²Π²Π΅Π΄Π΅Π½Π½Ρ‹Ρ… Π² тСкстовоС ΠΏΠΎΠ»Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΈ автоподстановку ΠΈΡ… ΠΏΡ€ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ Π²Π²ΠΎΠ΄Π΅. Π•Π³ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Π΅ значСния β€” on, off, unspecefied.

ПослСднСС ΠΏΠΎΠ»Π΅ β€” простоС тСкстовоС, Π½ΠΎ ΠΎΠ½ΠΎ ΠΈΠΌΠ΅Π΅Ρ‚ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ list, ΡΠ²Π»ΡΡŽΡ‰ΠΈΠΉΡΡ ссылкой Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ <datalist>, слуТащий Π²ΠΎΠΏΠ»ΠΎΡ‰Π΅Π½ΠΈΠ΅ΠΌ ΠΌΠ΅Ρ‡Ρ‚Ρ‹ ΠΌΠ½ΠΎΠ³ΠΈΡ… Π²Π΅Ρ€ΡΡ‚Π°Π»ΡŒΡ‰ΠΈΠΊΠΎΠ². Π•Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°Π·Π²Π°Ρ‚ΡŒ сочСтаниСм элСмСнта select ΠΈ тСкстового поля Π²Π²ΠΎΠ΄Π° с автоподстановкой. Как ΠΎΠ½ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚, ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΈΠ΄Π΅Ρ‚ΡŒ Π½Π° рис. 17. Π’ ΠΏΠΎΠ»Π΅ со связанным Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠΌ ΠΏΠΎΠ΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ΡΡ значСния (value) ΠΈΠ· списка, Π° тСкст ΠΈΠ· Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π° label (Π½Π΅ обязатСлСн) слуТит ΠΏΠΎΡΡΠ½ΡΡŽΡ‰Π΅ΠΉ надписью.

ΠŸΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΠΌ с Π½ΠΎΠ²ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΠΎΠΉ:

<form>

Sum:

<input min = Β«-15Β» max = Β«15Β» step=Β»3β€³ type = Β«numberΒ» /> Age:

<input min = Β«5Β» max = Β«32Β» type = Β«rangeΒ» />

Color:

<input type = Β«colorΒ» />

Page:

<input autofocus type = Β«searchΒ»/>

</form>

Рис. 17. Автоподстановка Π² стилС HTML5

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ Ρ„ΠΎΡ€ΠΌΠ° выглядит Π±ΠΎΠ»Π΅Π΅ интСрСсно (рис. 18). ΠŸΠ΅Ρ€Π²ΠΎΠ΅ ΠΏΠΎΠ»Π΅ Π²Π²ΠΎΠ΄Π° (type = Β«numberΒ») ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΎ для Π²Π²ΠΎΠ΄Π° цСлочислСнных Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ. Π•Π³ΠΎ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Ρ‹ min, m ax ΠΈ step Π·Π°Π΄Π°ΡŽΡ‚ Π²Π΅Ρ€Ρ…Π½ΠΈΠΉ, Π½ΠΈΠΆΠ½ΠΈΠΉ ΠΏΡ€Π΅Π΄Π΅Π»Ρ‹ ΠΈ шаг ΠΌΠ΅ΠΆΠ΄Ρƒ значСниями соотвСтствСнно. Π­Ρ‚ΠΈ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Ρ‹ ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°ΡŽΡ‚ΡΡ Ρƒ всСх элСмСнтов, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΡ… числСнныС ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ. Π˜Ρ… значСния ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ зависят ΠΎΡ‚ Ρ‚ΠΈΠΏΠ° элСмСнта. Для ΡƒΠΏΡ€Π°Π²-

Рис. 18. Π•Ρ‰Π΅ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ»Π΅ΠΉ

ЛСния Ρ‚Π°ΠΊΠΈΠΌΠΈ значСниями Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ stepUp() ΠΈ stepDown(), ΠΈΠ·ΠΌΠ΅Π½ΡΡŽΡ‰ΠΈΠ΅ значСния элСмСнта Π½Π° шаг.

НСсмотря Π½Π° Ρ‚ΠΎ Ρ‡Ρ‚ΠΎ Π² Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ соврСмСнных Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠ² это ΠΏΠΎΠ»Π΅ отобразится со стрСлочками для Π²Π²ΠΎΠ΄Π° значСния ΠΈΠ· Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π°, Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠ΅ число тСкстом ΠΌΠΎΠΆΠ½ΠΎ, Π½ΠΎ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ прослСдит Π·Π° Π΅Π³ΠΎ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΡΡ‚ΡŒΡŽ.

Π’ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ… range ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для ввода… Π²ΠΏΡ€ΠΎΡ‡Π΅ΠΌ, Π½Π°ΠΌ Π½Π΅ особо Π²Π°ΠΆΠ½ΠΎ, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΌ вводится, Π²Π°ΠΆΠ½ΠΎ β€” ΠΊΠ°ΠΊ. Как Π²ΠΈΠ΄ΠΈΠΌ Π½Π° рисункС, ΠΎΠ½ отобраТаСтся Π² Π²ΠΈΠ΄Π΅ ΠΏΠΎΠ»Π·ΡƒΠ½ΠΊΠ° ΠΈ позволяСт Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ значСния ΠΈΠ· Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π°.

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Ρ‚ΠΈΠΏ β€” color β€” Π² свСтС повсСмСстного вторТСния Π² Π²Π΅Π±Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΡƒ Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ, Π½Π°Π²Π΅Ρ€Π½ΠΎΠ΅, Π±ΡƒΠ΄Π΅Ρ‚ довольно Π°ΠΊΡ‚ΡƒΠ°Π»Π΅Π½. Он, разумССтся, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для Π²Π²ΠΎΠ΄Π° значСния Ρ†Π²Π΅Ρ‚Π° ΠΈΠ· ΠΏΠ°Π»ΠΈΡ‚Ρ€Ρ‹. Π­Ρ‚ΠΎΡ‚ процСсс ΠΏΠΎΠΊΠ°Π·Π°Π½ Π½Π° рис. 19, Π½ΠΎ Π²Ρ‹Π½ΡƒΠΆΠ΄Π΅Π½ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ Π΄Π°Π½Π½ΠΎΠ΅ свойство Π΅Ρ‰Π΅ Π΄Π°Π»Π΅ΠΊΠΎ Π½Π΅ Π²Π΅Π·Π΄Π΅.

Рис. 19. Π’Ρ‹Π±ΠΎΡ€ Ρ†Π²Π΅Ρ‚Π° с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ input type = Β«colorΒ»

ПолС со свойством type = Ρ€ earch добавляСт Π½Π° ваш сайт поисковый Π΄Π²ΠΈΠΆΠΎΠΊ. ΠŸΠΎΠ²Π΅Ρ€ΠΈΠ»ΠΈ?

А зря! Π­Ρ‚ΠΎ Π±Ρ‹Π»ΠΎ Π±Ρ‹ Π½Π΅ΠΏΠ»ΠΎΡ…ΠΎ, Π½ΠΎ Π½Π΅Ρ‚, ΠΎΠ½ всСго лишь ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ‚ спСцифичноС ΠΎΡ„ΠΎΡ€ΠΌΠ»Π΅Π½ΠΈΠ΅ поля Π²Π²ΠΎΠ΄Π°. Атрибут autofocus устанавливаСт фокус Π½Π° Π΄Π°Π½Π½ΠΎΠ΅ ΠΏΠΎΠ»Π΅ Π²Π²ΠΎΠ΄Π°. Для ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΠΎΠ»Π΅ с Ρ‚Π°ΠΊΠΈΠΌ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠΌ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ СдинствСнным Π½Π° страницС.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Ρ€Π°Π·Π±Π΅Ρ€Π΅ΠΌ Π΅Ρ‰Π΅ ΠΎΠ΄Π½Ρƒ Ρ„ΠΎΡ€ΠΌΡƒ, Π½Π° этот Ρ€Π°Π· с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Π΄Π°Ρ‚Ρ‹ ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ:

<form>
Date:
<input type =Β«dateΒ» />
Time:
<i nput type =Β«timeΒ»/>
DateTime:
<i nput type =Β«datetimeΒ»/>
Month:
<input type =β€˜monthΒ»/> alidationMessage
Week:
<input type =Β«weekΒ» validationMessage
</form>

Β«ΠΠ΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ Π½ΠΎΠΌΠ΅Ρ€!Β»/>

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ β€” Π½Π° рис. 20.

Рис. 20. Поля для Π²Π²ΠΎΠ΄Π° Π΄Π°Ρ‚Ρ‹/Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ

ΠŸΠ΅Ρ€Π²ΠΎΠ΅ ΠΏΠΎΠ»Π΅ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΎ для Π²Π²ΠΎΠ΄Π° Π΄Π°Ρ‚Ρ‹. Как ΠΈ Π² ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ… случаях, ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Π°Ρ Π·Π°Π΄Π°Ρ‡Π° Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π° β€” ΠΎΡ‚ΡΠ»Π΅Π΄ΠΈΡ‚ΡŒ Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½Ρ‹Π΅ значСния, способ ΠΆΠ΅ Π²Π²ΠΎΠ΄Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π»ΡŽΠ±Ρ‹ΠΌ. НапримСр, Ρ‚Π°ΠΊΠΈΠΌ, ΠΊΠ°ΠΊ Π½Π° рис. 21 (Opera 11.52). По-ΠΌΠΎΠ΅ΠΌΡƒ, ΠΎΡ‡Π΅Π½ΡŒ ΡƒΠ΄ΠΎΠ±Π½ΠΎ.

Π’ΠΈΠΏ time позволяСт Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒ часы Π² 24-часовом Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅. Π’ΠΈΠΏ считаСт Π΄Π²Π° ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΡ… Ρ‚ΠΈΠΏΠ°, ΠΏΡ€ΠΈΡ‡Π΅ΠΌ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π΄Π°Ρ‚Ρƒ с Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ

Рис. 21. Π’Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ Π΄Π°Ρ‚Ρƒ

Π£Ρ‡Π΅Ρ‚Π° часового пояса (Π΅ΡΡ‚ΡŒ Π΅Ρ‰Π΅ Ρ‚ΠΈΠΏ datetime-local, Π½Π΅ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉ эту ΠΌΠ΅Π»ΠΎΡ‡ΡŒ).

ЧСстно говоря, Π±ΡƒΠ΄ΡŒ я Π½Π° мСстС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² стандарта, я Π±Ρ‹ этим ΠΈ ограничился. Но Π½Π° этом мСстС оказались Π±ΠΎΠ»Π΅Π΅ Ρ‰Π΅Π΄Ρ€Ρ‹Π΅ люди, ΠΈ поэтому ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ Π΅Ρ‰Π΅ Π΄Π²Π° Ρ‚ΠΈΠΏΠ°:

β€” month β€” позволяСт Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ мСсяца. Π’Π½Π΅ зависимости ΠΎΡ‚ Ρ„ΠΎΡ€ΠΌΡ‹ Π²Π²ΠΎΠ΄Π° (Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… рСализациях это Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠΉ список с названиями мСсяцСв, Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… β€” ΠΊΠ°Π»Π΅Π½Π΄Π°Ρ€ΠΈΠΊ) Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° Β«2012-03Β»;

β€” week β€” Π²Π²ΠΎΠ΄ Π½Π΅Π΄Π΅Π»ΠΈ. На сСрвСр Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅Π΄Π°Π½ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π²Ρ€ΠΎΠ΄Π΅ 2012-W11, Π³Π΄Π΅ 11 β€” Π½ΠΎΠΌΠ΅Ρ€ Π½Π΅Π΄Π΅Π»ΠΈ Π² Π³ΠΎΠ΄Ρƒ.

Атрибут v alidationMessage, присвоСнный послСднСму полю, Π·Π°Π΄Π°Π΅Ρ‚ сообщСниС ΠΎΠ± ошибкС, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΡΠ²Π»ΡΡ‚ΡŒΡΡ ΠΏΡ€ΠΈ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½ΠΈΠΈ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠΌ Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ….

Π’Π°ΠΌ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ интСрСсны ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΡΡ‚Π°Ρ‚ΡŒΠΈ:

Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ ΡΡ‚ΠΈΠ»ΡŒΠ½Ρ‹Π΅ Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠ΅ списки

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ ΠΏΠΎΠΊΠ°ΠΆΠ΅ΠΌ, ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ красивыС Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠ΅ списки Π±Π΅Π· использования ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ,Β Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ CSS. Π’Π°ΠΊΠΆΠ΅ ΠΌΡ‹ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° jQuery, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π·Π°ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΈΡ… Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ.

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Π΅Ρ‰ΠΈ, ΠΏΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ ΠΌΡ‹ Π½Π°Ρ‡Π½Π΅ΠΌ:

  • Π’ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°Ρ… ΠΊΠΎΠ΄Π° ΠΏΡ€ΠΎΠΏΡƒΡ‰Π΅Π½Ρ‹ прСфиксы Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠ² для CSS-свойств, Π½ΠΎ Π²Ρ‹, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°ΠΉΡ‚ΠΈ ΠΈΡ… Π² исходных Ρ„Π°ΠΉΠ»Π°Ρ….
  • Π›ΠΈΡ‡Π½ΠΎ я ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ бокс-модСль, Π³Π΄Π΅ [width] = [element-width] + [padding] + [borders]. Π§Ρ‚ΠΎΠ±Ρ‹ Π΅Ρ‘ Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ ΠΊΠΎΠ΄Π°:

*,
*:after,
*:before {
Β  Β  box-sizing: border-box;
}

Π˜Ρ‚Π°ΠΊ, с Ρ‡Π΅Π³ΠΎ ΠΆΠ΅ ΠΌΡ‹ Π½Π°Ρ‡Π½Π΅ΠΌ.

ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ вопрос: Ρ‡Ρ‚ΠΎ Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ для создания Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π³ΠΎ мСню? Π’ ΠΎΠ±Ρ‰Π΅ΠΌ, ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π±Π»ΠΎΠΊ DIV с Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹ΠΌ Ρ‚Π΅Π³ΠΎΠΌ span ΠΈ нСупорядочСнный список для Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π³ΠΎ мСню:

<div>
Β  Β  <span>I’m kinda the label!</span>
Β  Β  <ul>
Β  Β  Β  Β  <li>I’m hidden!</li>
Β  Β  Β  Β  <li>Me too!</li>
Β  Β  Β  Β  <li>So do I. </li>
Β  Β  </ul>
</div>

JavaScript

Нам Π½ΡƒΠΆΠ½Π΅Π½ нСбольшой JavaScript, Ρ‡Ρ‚ΠΎΠ±Ρ‹ наш Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠΉ список Ρ€Π°Π±ΠΎΡ‚Π°Π» ΠΊΠ°ΠΊ Π½ΡƒΠΆΠ½ΠΎ. Π­Ρ‚ΠΎΡ‚ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ JS ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для всСх ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ²:

//…
Β 
obj.dd.on(‘click’, function(event){
Β  Β  $(this).toggleClass(‘active’);
Β  Β  return false;
});
Β 
//…
Β 
$(function() {
Β 
Β  Β  var dd = new DropDown( $(‘#dd’) );
Β 
Β  Β  $(document).click(function() {
Β  Β  Β  Β  // all dropdowns
Β  Β  Β  Β  $(‘.wrapper-dropdown-1’).removeClass(‘active’);
Β  Β  });
Β 
});

Π’Π°ΠΊ Ρ‡Ρ‚ΠΎ ΠΆΠ΅ это скрипт Π΄Π΅Π»Π°Π΅Ρ‚? Π’ΠΎ-ΠΏΠ΅Ρ€Π²Ρ‹Ρ…, ΠΎΠ½ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ класс .active, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ ΠΊΠ»ΠΈΠΊΠ°Π΅Ρ‚Π΅ Π½Π° Π²Ρ€Π°ΠΏΠΏΠ΅Ρ€. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Ссли Π²Ρ€Π°ΠΏΠΏΠ΅Ρ€ Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ класс .active, Ρ‚ΠΎ ΠΎΠ½ добавляСтся, Π° Ссли этот класс ΡƒΠΆΠ΅ присвоСн, Ρ‚ΠΎ ΠΎΠ½ удаляСтся.

Π’ΠΎ-Π²Ρ‚ΠΎΡ€Ρ‹Ρ…, скрипт создаСт ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ для Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅Π³ΠΎΡΡ списка, закрывая Π΅Π³ΠΎ, Ссли Π²Ρ‹ Ρ‰Π΅Π»ΠΊΠ½ΠΈΡ‚Π΅ Π² любом Π΄Ρ€ΡƒΠ³ΠΎΠΌ мСстС Π½Π° экранС.

Π§Ρ‚ΠΎ ΠΆ, Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΡ‹ ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅ΠΌ, ΠΊΠ°ΠΊ это Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚, я Π΄ΡƒΠΌΠ°ΡŽ, ΠΏΡ€ΠΈΡˆΠ»ΠΎ врСмя для создания ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ²!

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 1

Π”Π°Π²Π°ΠΉΡ‚Π΅ Π½Π°Ρ‡Π½Π΅ΠΌ с Ρ‡Π΅Π³ΠΎ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ простого: простой Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉΡΡ список для указания ΠΏΠΎΠ»Π°. Π”Π°Π²Π°ΠΉΡ‚Π΅ сначала посмотрим Π½Π° Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΡƒ:

HTML-Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠ°

Нам Π½ΡƒΠΆΠ½ΠΎ нСсколько Π²Π΅Ρ‰Π΅ΠΉ: ΠΎΠ±Π΅Ρ€Ρ‚ΠΊΠ° (div с id#dd), (скрытый) Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉΡΡ список ΠΈ «Π»Π΅ΠΉΠ±Π»», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠ±Π΅Ρ€Π½ΡƒΡ‚ Ρ‚Π΅Π³ΠΎΠΌ span. ΠœΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ ссылки-якоря, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΌΠ½Π΅ каТСтся Ρ‚Π°ΠΊ Π±ΡƒΠ΄Π΅Ρ‚ сСмантичСски ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ, Π½ΠΎ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΎΠΉ Ρ‚Π΅Π³.

<div tabindex=»1″>
    <span>Пол</span>
Β  Β  <ul>
Β  Β  Β  Β  <li><a href=»#»>ΠœΡƒΠΆΡΠΊΠΎΠΉ</a></li>
Β  Β  Β  Β  <li><a href=»#»>ЖСнский</a></li>
Β  Β  </ul>
</div>

CSS

Π”Π°Π²Π°ΠΉΡ‚Π΅ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΠ΅Ρ€Π΅ΠΉΠ΄Π΅ΠΌ ΠΊ CSS. НачнСм с ΠΎΠ±Π΅Ρ€Ρ‚ΠΊΠΈ (Π²Ρ€Π°ΠΏΠΏΠ΅Ρ€Π°):

.wrapper-dropdown {
Β  Β  /* Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΈ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ */
Β  Β  position: relative; /* Enable absolute positioning for children and pseudo elements */
Β  Β  width: 200px;
Β  Β  padding: 10px;
Β  Β  margin: 0 auto;
Β 
Β  Β  /* Ρ†Π²Π΅Ρ‚ ΠΈ Ρ„ΠΎΠ½ */
Β  Β  background: #9bc7de;
Β  Β  color: #fff;
Β  Β  outline: none;
Β  Β  cursor: pointer;
Β 
Β  Β  /* ΡˆΡ€ΠΈΡ„Ρ‚ */
Β  Β  font-weight: bold;
}

Π˜Ρ‚Π°ΠΊ, ΠΌΡ‹ сдСлали нСсколько Π²Π΅Ρ‰Π΅ΠΉ. Π‘Π½Π°Ρ‡Π°Π»Π° ΠΌΡ‹ установили ΡˆΠΈΡ€ΠΈΠ½Ρƒ списка ΠΈ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ отступы. Π”Π°Π»Π΅Π΅, ΠΌΡ‹ Π·Π°Π΄Π°Π»ΠΈ Π΅ΠΌΡƒ Ρ†Π²Π΅Ρ‚ ΠΈ Ρ„ΠΎΠ½. И, Π½Π°ΠΊΠΎΠ½Π΅Ρ†, ΠΌΡ‹ установили ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ для ΡˆΡ€ΠΈΡ„Ρ‚Π°.

Π”Π°Π²Π°ΠΉΡ‚Π΅ Π·Π°ΠΊΠΎΠ½Ρ‡ΠΈΠΌ с «Π»Π΅ΠΉΠ±Π»ΠΎΠΌ», Π΄ΠΎΠ±Π°Π²ΠΈΠ² Π½Π΅Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ стрСлку справа ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ псСвдо-элСмСнта.

.wrapper-dropdown:after {
Β  Β  content: «»;
Β  Β  width: 0;
Β  Β  height: 0;
Β  Β  position: absolute;
Β  Β  right: 16px;
Β  Β  top: 50%;
Β  Β  margin-top: -6px;
Β  Β  border-width: 6px 0 6px 6px;
Β  Β  border-style: solid;
Β  Β  border-color: transparent #fff; Β 
}

Π― Π΄ΡƒΠΌΠ°ΡŽ, ΠΌΡ‹ всС Π·Π½Π°Π΅ΠΌ, ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ малСнький Ρ‚Ρ€Π΅ΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊ Π½Π° CSS ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Π±ΠΎΡ€Π΄Π΅Ρ€Π° (Π³Ρ€Π°Π½ΠΈΡ†Ρ‹). Π­Ρ‚ΠΎ ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ Ρ…Π°ΠΊ, Π½ΠΎ Ссли ΠΎΠ½ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΎΡ‡Π΅Π½ΡŒ Ρ…ΠΎΡ€ΠΎΡˆΠΎ, Ρ‚Π°ΠΊ ΠΏΠΎΡ‡Π΅ΠΌΡƒ Π±Ρ‹ ΠΈ Π½Π΅Ρ‚? Π’Π°ΠΌ Π½Π΅Ρ‚ Π½ΠΈΡ‡Π΅Π³ΠΎ особСнного: малСнькая бСлая стрСлка справа.

Π˜Ρ‚Π°ΠΊ, Ρƒ нас Π΅ΡΡ‚ΡŒ симпатичная нСбольшая ΠΊΠ½ΠΎΠΏΠΊΠ°, Π½ΠΎ Π±Π΅Π· Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅Π³ΠΎΡΡ содСрТания ΠΎΠ½Π° ΠΈΠΌΠ΅Π΅Ρ‚ Π½ΠΈΠΊΠ°ΠΊΠΎΠ³ΠΎ смысла. Π”Π°Π²Π°ΠΉΡ‚Π΅ разбСрСмся с нашим списком!

.wrapper-dropdown-1 .dropdown {
Β  Β  /* Size &amp; position */
Β  Β  position: absolute;
Β  Β  top: 100%;
Β  Β  left: 0; /* Size */
Β  Β  right: 0; /* Size */
Β 
Β  Β  /* Styles */
Β  Β  background: #fff;
Β  Β  font-weight: normal; /* Overwrites previous font-weight: bold; */
Β 
Β  Β  /* Hiding */
Β  Β  opacity: 0;
Β  Β  pointer-events: none;
}

ΠœΡ‹ Π·Π°Π΄Π°Π΄ΠΈΠΌ Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΌΡƒΡΡ списку Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎΠ΅ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ размСстим Π΅Π³ΠΎ ΠΏΠΎΠ·Π°Π΄ΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΈ (top: 100%;). Π—Π°Π΄Π°Π΄ΠΈΠΌ Π΅ΠΌΡƒ Ρ‚Π°ΠΊΡƒΡŽ ΠΆΠ΅ ΡˆΠΈΡ€ΠΈΠ½Ρƒ, ΠΊΠ°ΠΊ для ΠΊΠ½ΠΎΠΏΠΊΠΈ. И, Π½Π°ΠΊΠΎΠ½Π΅Ρ†, скроСм Π΅Π³ΠΎ, ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΠ² Π΅Π³ΠΎ ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½ΠΎΡΡ‚ΡŒ Π΄ΠΎ 0.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π·Π°Π΄Π°Π΄ΠΈΠΌ стили для элСмСнтов списка:

.wrapper-dropdown-1 .dropdown li a {
Β  Β  display: block;
Β  Β  text-decoration: none;
Β  Β  color: #9e9e9e;
Β  Β  padding: 10px 20px;
}
Β 
/* Hover state */
.wrapper-dropdown-1 .dropdown li:hover a {
Β  Β  background: #f3f8f8;
}

Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ JavaScript ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ класс .active, ΠΊΠΎΠ³Π΄Π° ΠΌΡ‹ Π½Π°ΠΆΠΈΠΌΠ°Π΅ΠΌ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ, Π½Π° основС этого класса ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ наш CSS для отобраТСния Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅Π³ΠΎΡΡ списка.

/* Active state */
.wrapper-dropdown-1.active .dropdown {
Β  Β  opacity: 1;
Β  Β  pointer-events: auto;
}
Β 
.wrapper-dropdown-1.active:after {
Β  Β  border-color: #9bc7de transparent;
Β  Β  border-width: 6px 6px 0 6px ;
Β  Β  margin-top: -3px;
}
Β 
.wrapper-dropdown-1.active {
Β  background: #9bc7de;
Β  background: linear-gradient(to right, #9bc7de 0%, #9bc7de 78%, #ffffff 78%, #ffffff 100%);
}

Π’Ρ€ΠΈ Π²Π΅Ρ‰ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ:

  1. Π’ΠΎ-ΠΏΠ΅Ρ€Π²Ρ‹Ρ…, ΠΌΡ‹ Π΄Π΅Π»Π°Π΅ΠΌ Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠΉ список Π²ΠΈΠ΄ΠΈΠΌΡ‹ΠΌ, ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ² Π΅Π³ΠΎ ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½ΠΎΡΡ‚ΡŒ Π΄ΠΎ 1. Β 
  2. Π”Π°Π»Π΅Π΅, ΠΌΡ‹ мСняСм Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΈ Ρ†Π²Π΅Ρ‚ малСнькой стрСлки.
  3. Π—Π°Ρ‚Π΅ΠΌ ΠΌΡ‹ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠΌ Ρ„ΠΎΠ½ ΠΏΠΎΠ·Π°Π΄ΠΈ стрСлки с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚Π°.

JavaScript

ПослСднСС, Π½ΠΎ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ Π²Π°ΠΆΠ½ΠΎΠ΅, ΠΌΡ‹ Ρ‚Π°ΠΊΠΆΠ΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π΅Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ JavaScript, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΊΠ½ΠΎΠΏΠΊΠ° ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π»Π° Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅.

function DropDown(el) {
Β  Β  this.dd = el;
Β  Β  this.placeholder = this.dd.children(‘span’);
Β  Β  this.opts = this.dd.find(‘ul.dropdown > li’);
Β  Β  this.val = »;
Β  Β  this.index = -1;
Β  Β  this.initEvents();
}
DropDown.prototype = {
Β  Β  initEvents : function() {
Β  Β  Β  Β  var obj = this;
Β 
Β  Β  Β  Β  obj.dd.on(‘click’, function(event){
Β  Β  Β  Β  Β  Β  $(this).toggleClass(‘active’);
Β  Β  Β  Β  Β  Β  return false;
Β  Β  Β  Β  });
Β 
Β  Β  Β  Β  obj.opts.on(‘click’,function(){
Β  Β  Β  Β  Β  Β  var opt = $(this);
Β  Β  Β  Β  Β  Β  obj.val = opt.text();
Β  Β  Β  Β  Β  Β  obj.index = opt.index();
Β  Β  Β  Β  Β  Β  obj.placeholder.text(‘Gender: ‘ + obj. val);
Β  Β  Β  Β  });
Β  Β  },
Β  Β  getValue : function() {
Β  Β  Β  Β  return this.val;
Β  Β  },
Β  Β  getIndex : function() {
Β  Β  Β  Β  return this.index;
Β  Β  }
}

ΠžΡ‡Π΅Π½ΡŒ простой ΠΊΠΎΠ΄: ΠΏΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ Π½Π° элСмСнт ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ Π΅Π³ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΈ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌ Π΅Π³ΠΎ Π² Ρ‚Π΅Π³Π΅ span.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 2

Π’ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ создадим красивоС мСню для рСгистрации Π² Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… ΡΠΎΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… сСтях.

HTML-Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠ°

<div>РСгистрация
Β  Β  <ul>
Β  Β  Β  Β  <li><a href=»#»><i></i>Twitter</a></li>
Β  Β  Β  Β  <li><a href=»#»><i></i>Github</a></li>
Β  Β  Β  Β  <li><a href=»#»><i></i>Facebook</a></li>
Β  Β  </ul>
</div>

Π’Π΅Π³ΠΈ <i> ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для отобраТСния ΠΌΠ°Π»Π΅Π½ΡŒΠΊΠΈΡ… ΠΈΠΊΠΎΠ½ΠΎΠΊ ΠΈΠ· FontAwesome. Π― Π½Π΅ Π±ΡƒΠ΄Ρƒ ΠΎΠ±ΡŠΡΡΠ½ΡΡ‚ΡŒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ FontAwesome здСсь, ΠΏΠΎΡ‚ΠΎΠΌΡƒ ΠΊΠ°ΠΊ ΠΎΠ± этом ΡƒΠΆΠ΅ Π±Ρ‹Π»ΠΎ Π½Π΅ Ρ€Π°Π· сказано Π² ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΡ… ΡΡ‚Π°Ρ‚ΡŒΡΡ…. ΠŸΡ€ΠΎΡΡ‚ΠΎ ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ это Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚.

CSS

Π”Π°Π²Π°ΠΉΡ‚Π΅ Π½Π°Ρ‡Π½Π΅ΠΌ с ΠΎΠ±Π΅Ρ€Ρ‚ΠΊΠΈ. Π’ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ стСпСни ΠΎΠ½Π° такая ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ ΠΎΠ±Π΅Ρ€Ρ‚ΠΊΠ° Π² ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅. ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° Π»Π΅Π²ΡƒΡŽ Π³Ρ€Π°Π½ΠΈΡ†Ρƒ Π² 5px.

.wrapper-dropdown-2 {
Β  Β  /* Size and position */
Β  Β  position: relative; /* Enable absolute positioning for children and pseudo elements */
Β  Β  width: 200px;
Β  Β  margin: 0 auto;
Β  Β  padding: 10px 15px;
Β 
Β  Β  /* Styles */
Β  Β  background: #fff;
Β  Β  border-left: 5px solid grey;
Β  Β  cursor: pointer;
Β  Β  outline: none;
}

Π’Π΅ΠΏΠ΅Ρ€ΡŒ малСнькая стрСлка. Π’ΠΎΡ‡Π½ΠΎ такая ΠΆΠ΅, ΠΊΠ°ΠΊ Ρ€Π°Π½ΡŒΡˆΠ΅:

.wrapper-dropdown-2:after {
Β  Β  content: «»;
Β  Β  width: 0;
Β  Β  height: 0;
Β  Β  position: absolute;
Β  Β  right: 16px;
Β  Β  top: 50%;
Β  Β  margin-top: -3px;
Β  Β  border-width: 6px 6px 0 6px;
Β  Β  border-style: solid;
Β  Β  border-color: grey transparent;
}

А это Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉΡΡ список. ΠžΠΏΡΡ‚ΡŒ ΠΆΠ΅, Π² Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ стСпСни Ρ‚Π°ΠΊΠΎΠΉ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ Π² ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅:

. wrapper-dropdown-2 .dropdown {
Β  /* Size &amp; position */
Β  Β  position: absolute;
Β  Β  top: 100%;
Β  Β  left: -5px;
Β  Β  right: 0px;
Β 
Β  Β  /* Styles */
Β  Β  background: white;
Β  Β  transition: all 0.3s ease-out;
Β  Β  list-style: none;
Β 
Β  Β  /* Hiding */
Β  Β  opacity: 0;
Β  Β  pointer-events: none;
}

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉΡΡ список постСпСнно ΠΏΠΎΡΠ²Π»ΡΡŽΡ‰ΠΈΠΌΡΡ (Π°Π½ΠΈΠΌΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ), Π° Π½Π΅ просто ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΌΡΡ, ΠΊΠ°ΠΊ Π² ΠΏΠ΅Ρ€Π²ΠΎΠΌ Π΄Π΅ΠΌΠΎ.

НСкоторыС стили для ссылок ΠΈ ΠΈΠΊΠΎΠ½ΠΎΠΊ:

.wrapper-dropdown-2 .dropdown li a {
Β  Β  display: block;
Β  Β  text-decoration: none;
Β  Β  color: #333;
Β  Β  border-left: 5px solid;
Β  Β  padding: 10px;
Β  Β  transition: all 0.3s ease-out;
}
Β 
.wrapper-dropdown-2 .dropdown li:nth-child(1) a {
Β  Β  border-left-color: #00ACED;
}
Β 
.wrapper-dropdown-2 .dropdown li:nth-child(2) a {
Β  Β  border-left-color: #4183C4;
}
Β 
. wrapper-dropdown-2 .dropdown li:nth-child(3) a {
Β  Β  border-left-color: #3B5998;
}
Β 
.wrapper-dropdown-2 .dropdown li i {
Β  Β  margin-right: 5px;
Β  Β  color: inherit;
Β  Β  vertical-align: middle;
}
Β 
/* Hover state */
Β 
.wrapper-dropdown-2 .dropdown li:hover a {
Β  Β  color: grey;
}

И Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ, займСмся стилями списка Π² раскрытом состоянии. ИзмСним Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ стрСлки, Π° Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉΡΡ список станСт Π²ΠΈΠ΄ΠΈΠΌΡ‹ΠΌ.

.wrapper-dropdown-2.active:after {
Β  Β  border-width: 0 6px 6px 6px;
}
Β 
.wrapper-dropdown-2.active .dropdown {
Β  Β  opacity: 1;
Β  Β  pointer-events: auto;
}

JavaScript

function DropDown(el) {
Β  Β  this.dd = el;
Β  Β  this.initEvents();
}
DropDown.prototype = {
Β  Β  initEvents : function() {
Β  Β  Β  Β  var obj = this;
Β 
Β  Β  Β  Β  obj.dd.on(‘click’, function(event){
Β  Β  Β  Β  Β  Β  $(this).toggleClass(‘active’);
Β  Β  Β  Β  Β  Β  event.stopPropagation();
Β  Β  Β  Β  });
Β  Β  }
}

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 3

ΠŸΠ΅Ρ€Π΅ΠΉΠ΄Π΅ΠΌ ΠΊ Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅ΠΌΡƒ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ, Π² Π΄Π°Π½Π½ΠΎΠΌ случаС Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹ΠΉ ΠΏΡƒΠ½ΠΊΡ‚ Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°ΠΌΠ΅Π½ΡΡ‚ΡŒ собой Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ.

HTML-Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠ°

<div tabindex=»1″>
Β  Β  <span>Вранспорт</span>
Β  Β  <ul>
Β  Β  Β  Β  <li><a href=»#»><i></i>ΠŸΠΎΡ‡Ρ‚Π°</a></li>
Β  Β  Β  Β  <li><a href=»#»><i></i>UPS доставка</a></li>
Β  Β  Β  Β  <li><a href=»#»><i></i>Частный самолСт</a></li>
Β  Β  </ul>
</div>

Кода Π½Π΅ Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ большС, Ρ‡Π΅ΠΌ Ρ€Π°Π½ΡŒΡˆΠ΅. ΠŸΠ΅Ρ€Π΅ΠΉΠ΄Π΅ΠΌ ΠΊ CSS!

CSS

.wrapper-dropdown-3 {
Β  Β  /* Size and position */
Β  Β  position: relative;
Β  Β  width: 200px;
Β  Β  margin: 0 auto;
Β  Β  padding: 10px;
Β 
Β  Β  /* Styles */
Β  Β  background: #fff;
Β  Β  border-radius: 7px;
Β  Β  border: 1px solid rgba(0,0,0,0.15);
Β  Β  box-shadow: 0 1px 1px rgba(50,50,50,0.1);
Β  Β  cursor: pointer;
Β  Β  outline: none;
Β 
Β  Β  /* Font settings */
Β  Β  font-weight: bold;
Β  Β  color: #8AA8BD;
}

Π—Π΄Π΅ΡΡŒ ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Π³Ρ€Π°Π½ΠΈΡ†Ρ‹, Ρ‚Π΅Π½ΠΈ для Π±Π»ΠΎΠΊΠΎΠ² ΠΈ Π·Π°ΠΊΡ€ΡƒΠ³Π»Π΅Π½Π½Ρ‹Π΅ ΡƒΠ³Π»Ρ‹. Нам Ρ‚Π°ΠΊΠΆΠ΅ Π½ΡƒΠΆΠ½Π° малСнькая стрСлка:

.wrapper-dropdown-3:after {
Β  Β  content: «»;
Β  Β  width: 0;
Β  Β  height: 0;
Β  Β  position: absolute;
Β  Β  right: 15px;
Β  Β  top: 50%;
Β  Β  margin-top: -3px;
Β  Β  border-width: 6px 6px 0 6px;
Β  Β  border-style: solid;
Β  Β  border-color: #8aa8bd transparent;
}

Π’ΡƒΡ‚ всС Ρ‚Π°ΠΊΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ Ρ€Π°Π½ΡŒΡˆΠ΅, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ Π½Π΅ Π±ΡƒΠ΄Π΅ΠΌ ΠΎΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ ΠΊΠΎΠ΄ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ.

.wrapper-dropdown-3 .dropdown {
Β  /* Size &amp; position */
Β  Β  position: absolute;
Β  Β  top: 140%;
Β  Β  left: 0;
Β  Β  right: 0;
Β 
Β  Β  /* Styles */
Β  Β  background: white;
Β  Β  border-radius: inherit;
Β  Β  border: 1px solid rgba(0,0,0,0.17);
Β  Β  box-shadow: 0 0 5px rgba(0,0,0,0.1);
Β  Β  font-weight: normal;
Β  Β  transition: all 0.5s ease-in;
Β  Β  list-style: none;
Β 
Β  Β  /* Hiding */
Β  Β  opacity: 0;
Β  Β  pointer-events: none;
}
Β 
.wrapper-dropdown-3 .dropdown li a {
Β  Β  display: block;
Β  Β  padding: 10px;
Β  Β  text-decoration: none;
Β  Β  color: #8aa8bd;
Β  Β  border-bottom: 1px solid #e6e8ea;
Β  Β  box-shadow: inset 0 1px 0 rgba(255,255,255,1);
Β  Β  transition: all 0. 3s ease-out;
}
Β 
.wrapper-dropdown-3 .dropdown li i {
Β  Β  float: right;
Β  Β  color: inherit;
}
Β 
.wrapper-dropdown-3 .dropdown li:first-of-type a {
Β  Β  border-radius: 7px 7px 0 0;
}
Β 
.wrapper-dropdown-3 .dropdown li:last-of-type a {
Β  Β  border-radius: 0 0 7px 7px;
Β  Β  border: none;
}
Β 
/* Hover state */
Β 
.wrapper-dropdown-3 .dropdown li:hover a {
Β  Β  background: #f3f8f8;
}

ВсС выглядит Π·Π°ΠΌΠ΅Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, Π·Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ малСнькой стрСлки Π² Π²Π΅Ρ€Ρ…Π½Π΅ΠΉ ΠΏΡ€Π°Π²ΠΎΠΉ части Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅Π³ΠΎΡΡ списка. Π­Ρ‚Π° стрСлка Π²Π°ΠΆΠ½Π°: Π±Π΅Π· Π½Π΅Ρ‘, Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠΉ список выглядит ΠΊΠ°ΠΊ Π±ΡƒΠ΄Ρ‚ΠΎ ΠΎΠ½ ΠΏΠ»Π°Π²Π°Π΅Ρ‚ Π±Π΅Π· ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ связи с ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ.

.wrapper-dropdown-3 .dropdown:after {
Β  Β  content: «»;
Β  Β  width: 0;
Β  Β  height: 0;
Β  Β  position: absolute;
Β  Β  bottom: 100%;
Β  Β  right: 15px;
Β  Β  border-width: 0 6px 6px 6px;
Β  Β  border-style: solid;
Β  Β  border-color: #fff transparent; Β 
}
Β 
.wrapper-dropdown-3 . dropdown:before {
Β  Β  content: «»;
Β  Β  width: 0;
Β  Β  height: 0;
Β  Β  position: absolute;
Β  Β  bottom: 100%;
Β  Β  right: 13px;
Β  Β  border-width: 0 8px 8px 8px;
Β  Β  border-style: solid;
Β  Β  border-color: rgba(0,0,0,0.1) transparent; Β 
}

ΠœΡ‹ использовали Π΄Π²Π° псСвдо-элСмСнта для этой стрСлки, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π³Ρ€Π°Π½ΠΈΡ†Ρƒ Π²ΠΎΠΊΡ€ΡƒΠ³ Π½Π΅Ρ‘.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ стили для раскрытого состояния. ВсС ΠΎΠ΄Π½ΠΎ ΠΈ Ρ‚ΠΎ ΠΆΠ΅. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ установили ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ ΠΊΒ .dropdown Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ дольшС, Ρ‡Π΅ΠΌ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ (0,5 вмСсто 0,3 с). Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ мСню Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‡Π΅Π½ΡŒ Π³Π»Π°Π΄ΠΊΠΈΠΌ.

.wrapper-dropdown-3.active .dropdown {
Β  Β  opacity: 1;
Β  Β  pointer-events: auto;
}

JavaScript

Π§Ρ‚ΠΎΠ±Ρ‹ Π·Π°ΠΊΠΎΠ½Ρ‡ΠΈΡ‚ΡŒ этот Π΄Π΅ΠΌΠΎ-ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ JavaScript, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ. ΠœΡ‹ Π²ΠΈΠ΄Π΅Π»ΠΈ, ΠΊΠ°ΠΊ это дСлаСтся Π² ΠΏΠ΅Ρ€Π²ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅, Π½ΠΎ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΌΡ‹ Π½Π΅ оставляСм слово «Π’ранспорт» здСсь, Ρ‚ΠΎ JS Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ отличаСтся.

function DropDown(el) {
Β  Β  this.dd = el;
Β  Β  this.placeholder = this.dd.children(‘span’);
Β  Β  this.opts = this.dd.find(‘ul.dropdown > li’);
Β  Β  this.val = »;
Β  Β  this.index = -1;
Β  Β  this.initEvents();
}
DropDown.prototype = {
Β  Β  initEvents : function() {
Β  Β  Β  Β  var obj = this;
Β 
Β  Β  Β  Β  obj.dd.on(‘click’, function(event){
Β  Β  Β  Β  Β  Β  $(this).toggleClass(‘active’);
Β  Β  Β  Β  Β  Β  return false;
Β  Β  Β  Β  });
Β 
Β  Β  Β  Β  obj.opts.on(‘click’,function(){
Β  Β  Β  Β  Β  Β  var opt = $(this);
Β  Β  Β  Β  Β  Β  obj.val = opt.text();
Β  Β  Β  Β  Β  Β  obj.index = opt.index();
Β  Β  Β  Β  Β  Β  obj.placeholder.text(obj.val);
Β  Β  Β  Β  });
Β  Β  },
Β  Β  getValue : function() {
Β  Β  Β  Β  return this.val;
Β  Β  },
Β  Β  getIndex : function() {
Β  Β  Β  Β  return this.index;
Β  Β  }
}

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 4

Выглядит ΠΏΠΎ-Π΄Ρ€ΡƒΠ³ΠΎΠΌΡƒ, Π½Π΅ Ρ‚Π°ΠΊ Π»ΠΈ? Π—Π΄Π΅ΡΡŒ ΠΌΡ‹ создадим список ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Π΄Π΅Π», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ ΠΈ Ρ‚Π΅ΠΌ самым Π²Ρ‹Ρ‡Π΅Ρ€ΠΊΠ½ΡƒΡ‚ΡŒ. Π’ ΠΎΠ±Ρ‰Π΅ΠΌ Π½ΠΈΡ‡Π΅Π³ΠΎ особСнного, Π½ΠΎ этот ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ отличаСтся ΠΎΡ‚ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΡ… дСмонстраций.

HTML-Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠ°

<div>Π‘Π΄Π΅Π»Π°Ρ‚ΡŒ
Β  Β  <ul>
Β  Β  Β  Β  <li><input type=»checkbox» name=»el-1″ value=»donut»><label for=»el-1″>Π‘ΡŠΠ΅ΡΡ‚ΡŒ ΠΏΠΈΡ€ΠΎΠΆΠΎΠΊ</label></li>
Β  Β  Β  Β  <li><input type=»checkbox» name=»el-2″ value=»neighbour»><label for=»el-2″>Π‘Π»Π΅Π΄ΠΈΡ‚ΡŒ Π·Π° сосСдями</label></li>
Β  Β  Β  Β  <li><input type=»checkbox» name=»el-3″ value=»T-rex»><label for=»el-3″>ΠŸΠΎΠΊΠΎΡ€ΠΌΠΈΡ‚ΡŒ ΠΊΠΎΡ‚Π°</label></li>
Β  Β  </ul>
</div>

Π—Π΄Π΅ΡΡŒ Π½ΠΈΠ±ΡƒΠ΄Π΅Ρ‚ Π½ΠΈ ссылок, Π½ΠΈ Π·Π½Π°Ρ‡ΠΊΠΎΠ². Для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ элСмСнта, Ρƒ нас Π΅ΡΡ‚ΡŒ Π΄Π²Π΅ Ρ‚Π΅Π³Π°: чСкбокс с Π»Π΅ΠΉΠ±Π»ΠΎΠΌ.

CSS

.wrapper-dropdown-4 {
Β  Β  /* Size and position */
Β  Β  position: relative;
Β  Β  width: 270px;
Β  Β  margin: 0 auto;
Β  Β  padding: 10px 10px 10px 30px;
Β 
Β  Β  /* Styles */
Β  Β  background: #fff;
Β  Β  border: 1px solid silver;
Β  Β  cursor: pointer;
Β  Β  outline: none;
}

ΠœΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ отступ слСва, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ достаточно мСста для красных Π»ΠΈΠ½ΠΈΠΉ. Π’Π΅ΠΏΠ΅Ρ€ΡŒ, малСнькая стрСлка справа:

.wrapper-dropdown-4:after {
Β  Β  content: «»;
Β  Β  width: 0;
Β  Β  height: 0;
Β  Β  position: absolute;
Β  Β  right: 10px;
Β  Β  top: 50%;
Β  Β  margin-top: -3px;
Β  Β  border-width: 6px 6px 0 6px;
Β  Β  border-style: solid;
Β  Β  border-color: #ffaa9f transparent;
}

Π‘Ρ‚ΠΈΠ»ΠΈ для Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π³ΠΎ списка Ρ‚Π°ΠΊΠΈΠ΅ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ Π² ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΡ… ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°Ρ…:

.wrapper-dropdown-4 .dropdown {
Β  Β  /* Size &amp; position */
Β  Β  position: absolute;
Β  Β  top: 100%;
Β  Β  margin-top: 1px; /* border of wrapper */
Β  Β  left: -1px;
Β  Β  right: -1px;
Β 
Β  Β  /* Styles */
Β  Β  background: white;
Β  Β  border: 1px solid silver;
Β  Β  border-top: none;
Β  Β  list-style: none;
Β  Β  transition: all 0.3s ease-out;
Β  Β 
Β  Β  /* Hiding */
Β  Β  opacity: 0;
Β  Β  pointer-events: none;
}

ΠœΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒΒ margin-top Ρ€Π°Π²Π½Ρ‹ΠΉ 1px, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ΄Π²ΠΈΠ½ΡƒΡ‚ΡŒ Π΅Π³ΠΎ Π²Π½ΠΈΠ· ΠΈΠ·-Π·Π° Π³Ρ€Π°Π½ΠΈΡ†Ρ‹ ΠΎΠ±Π΅Ρ€Ρ‚ΠΊΠΈ.

.wrapper-dropdown-4 .dropdown li {
Β  Β  position: relative; /* Enable absolute positioning for checkboxes */
}
Β 
.wrapper-dropdown-4 .dropdown li label {
Β  Β  display: block;
Β  Β  padding: 10px 10px 10px 30px; /* Same padding as the button */
Β  Β  border-bottom: 1px dotted #1ccfcf;
Β  Β  transition: all 0.3s ease-out;
}
Β 
.wrapper-dropdown-4 .dropdown li:last-of-type label {
Β  Β  border: none;
}
Β 
.wrapper-dropdown-4 .dropdown li input /* Checkboxes */ {
Β  Β  position: absolute;
Β  Β  display: block;
Β  Β  right: 10px;
Β  Β  top: 50%;
Β  Β  margin-top: -8px;
}
Β 
/* Hover state */
Β 
.wrapper-dropdown-4 .dropdown li:hover label {
Β  Β  background: #f0f0f0;
}
Β 
/* Checked state */
Β 
.wrapper-dropdown-4 .dropdown li input:checked ~ label {
Β  Β  color: grey;
Β  Β  text-decoration: line-through;
}

ЧСкбоксы ΠΈΠΌΠ΅ΡŽΡ‚ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎΠ΅ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½Ρ‹ справа ΠΏΠΎ сСрСдинС Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π»ΠΈΠ½ΠΈΠΈ, Π½ΠΎ Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ связаны с Π»Π΅ΠΉΠ±Π»Π°ΠΌΠΈ, Ρ‚ΠΎ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°ΠΆΠ°Ρ‚ΡŒ Π² любом мСстС ΠΏΡƒΠ½ΠΊΡ‚Π°, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ ΠΈΡ….

Когда Ρ„Π»Π°ΠΆΠΎΠΊ установлСн, тСкст становится сСрым ΠΈ ΠΏΠ΅Ρ€Π΅Ρ‡Π΅Ρ€ΠΊΠ½ΡƒΡ‚Ρ‹ΠΌ. ΠŸΡ€ΠΎΡΡ‚ΠΎ, Π½ΠΎ эффСктивно.

Π£ нас Π΅ΡΡ‚ΡŒ Π΅Ρ‰Π΅ Π΄Π²Π΅ Ρ‚ΠΎΠ½ΠΊΠΈΠ΅ красныС Π»ΠΈΠ½ΠΈΠΈ слСва Π² нашСй малСнькой записной ΠΊΠ½ΠΈΠΆΠΊΠ΅. Π•ΡΡ‚ΡŒ Π΄Π²Π° способа ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ это: ΠΎΠ΄ΠΈΠ½ с псСвдо-элСмСнтами ΠΈ ΠΎΠ΄ΠΈΠ½ с Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚Π°ΠΌΠΈ. Π”Π°Π²Π°ΠΉΡ‚Π΅ посмотрим Π½Π° ΠΎΠ±Π° Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π°.

/* красныС Π»ΠΈΠ½ΠΈΠΈ с псСвдо-элСмСнтами */
.wrapper-dropdown-4 .dropdown:before,
.wrapper-dropdown-4:before {
Β  Β  content: «»;
Β  Β  width: 4px;
Β  Β  height: 100%;
Β  Β  position: absolute;
Β  Β  top: 0;
Β  Β  left: 15px;
Β  Β  border: 1px solid #ffaa9f;
Β  Β  border-top: none;
Β  Β  border-bottom: none;
Β  Β  z-index: 2;
}
Β 
/* Или: */
/* красныС Π»ΠΈΠ½ΠΈΠΈ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚Π° */
Β 
.wrapper-dropdown-4 .dropdown,
.wrapper-dropdown-4 {
Β  background: linear-gradient(left, white 5%, #ffaa9f 5%, #ffaa9f 5.3%, white 5.3%, white 6.5%, #ffaa9f 6.5%, #ffaa9f 6.8%, white 6.8%);
}
Β 
.wrapper-dropdown-4 .dropdown li:hover label {
Β  background: linear-gradient(left, #f0F0F0 5%, #ffaa9f 5%, #ffaa9f 5. 3%, #f0F0F0 5.3%, #f0F0F0 6.5%, #ffaa9f 6.5%, #ffaa9f 6.8%, #f0F0F0 6.8%);
}

Π’Π°ΠΊ ΠΊΠ°ΠΊΠΎΠΉ ΠΈΠ· этих способов Π»ΡƒΡ‡ΡˆΠ΅? ВСроятно, ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ, Ссли Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ эффСкт ΠΏΡ€ΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ Π½Π° элСмСнты списка, Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚, Ρ‡Ρ‚ΠΎ довольно нСпросто. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, псСвдо-элСмСнты Π»ΡƒΡ‡ΡˆΠ΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°ΠΌΠΈ (начиная с IE8), Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠΈ ΠΎΡ‚ Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚ΠΎΠ² (Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ Π΄ΠΎ IE10).

Π’Π΅ΠΏΠ΅Ρ€ΡŒ стили для раскрытого состояния. НичСго Π½ΠΎΠ²ΠΎΠ³ΠΎ здСсь Π½Π΅Ρ‚.

/* Active state */
Β 
.wrapper-dropdown-4.active:after {
Β  Β  border-width: 0 6px 6px 6px;
}
Β 
.wrapper-dropdown-4.active .dropdown {
Β  Β  opacity: 1;
Β  Β  pointer-events: auto;
}

JavaScript

function DropDown(el) {
Β  Β  this.dd = el;
Β  Β  this.opts = this.dd.find(‘ul.dropdown > li’);
Β  Β  this.val = [];
Β  Β  this.index = [];
Β  Β  this.initEvents();
}
DropDown.prototype = {
Β  Β  initEvents : function() {
Β  Β  Β  Β  var obj = this;
Β 
Β  Β  Β  Β  obj. dd.on(‘click’, function(event){
Β  Β  Β  Β  Β  Β  $(this).toggleClass(‘active’);
Β  Β  Β  Β  Β  Β  event.stopPropagation();
Β  Β  Β  Β  });
Β 
Β  Β  Β  Β  obj.opts.children(‘label’).on(‘click’,function(event){
Β  Β  Β  Β  Β  Β  var opt = $(this).parent(),
Β  Β  Β  Β  Β  Β  Β  Β  chbox = opt.children(‘input’),
Β  Β  Β  Β  Β  Β  Β  Β  val = chbox.val(),
Β  Β  Β  Β  Β  Β  Β  Β  idx = opt.index();
Β 
Β  Β  Β  Β  Β  Β  ($.inArray(val, obj.val) !== -1) ? obj.val.splice( $.inArray(val, obj.val), 1 ) : obj.val.push( val );
Β  Β  Β  Β  Β  Β  ($.inArray(idx, obj.index) !== -1) ? obj.index.splice( $.inArray(idx, obj.index), 1 ) : obj.index.push( idx );
Β  Β  Β  Β  });
Β  Β  },
Β  Β  getValue : function() {
Β  Β  Β  Β  return this.val;
Β  Β  },
Β  Β  getIndex : function() {
Β  Β  Β  Β  return this.index;
Β  Β  }
}

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 5

Наш послСдний ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΡ…ΠΎΠΆ Π½Π° Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π΅ мСню Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π°Π΄ΠΌΠΈΠ½-панСлях. Для этого ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ, ΠΊΠΎΠ³Π΄Π° ΠΌΡ‹ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ Π΅Π³ΠΎ. ВмСсто появлСния/исчСзновСния, ΠΎΠ½ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΊΠΎΠ»ΡŒΠ·ΠΈΡ‚ΡŒ Π²Π²Π΅Ρ€Ρ… ΠΈ Π²Π½ΠΈΠ·.

HTML-Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠ°

<div tabindex=»1″>Иван Иванов
Β  Β  <ul>
Β  Β  Β  Β  <li><a href=»#»><i></i>ΠŸΡ€ΠΎΡ„ΠΈΠ»ΡŒ</a></li>
Β  Β  Β  Β  <li><a href=»#»><i></i>Настройки</a></li>
Β  Β  Β  Β  <li><a href=»#»><i></i>Π’Ρ‹ΠΉΡ‚ΠΈ</a></li>
Β  Β  </ul>
</div>

CSS

.wrapper-dropdown-5 {
Β  Β  /* Size &amp; position */
Β  Β  position: relative;
Β  Β  width: 200px;
Β  Β  margin: 0 auto;
Β  Β  padding: 12px 15px;
Β 
Β  Β  /* Styles */
Β  Β  background: #fff;
Β  Β  border-radius: 5px;
Β  Β  box-shadow: 0 1px 0 rgba(0,0,0,0.2);
Β  Β  cursor: pointer;
Β  Β  outline: none;
Β  Β  transition: all 0.3s ease-out;
}
Β 
.wrapper-dropdown-5:after { /* Little arrow */
Β  Β  content: «»;
Β  Β  width: 0;
Β  Β  height: 0;
Β  Β  position: absolute;
Β  Β  top: 50%;
Β  Β  right: 15px;
Β  Β  margin-top: -3px;
Β  Β  border-width: 6px 6px 0 6px;
Β  Β  border-style: solid;
Β  Β  border-color: #4cbeff transparent;
}

Π­Ρ‚ΠΎ основныС стили. Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΠ΅Ρ€Π΅ΠΉΠ΄Π΅ΠΌ ΠΊ Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΌΡƒΡΡ списку, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ отличаСтся ΠΎΡ‚ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠ³ΠΎ.

.wrapper-dropdown-5 .dropdown {
Β  Β  /* Size &amp; position */
Β  Β  position: absolute;
Β  Β  top: 100%;
Β  Β  left: 0;
Β  Β  right: 0;
Β 
Β  Β  /* Styles */
Β  Β  background: #fff;
Β  Β  border-radius: 0 0 5px 5px;
Β  Β  border: 1px solid rgba(0,0,0,0.2);
Β  Β  border-top: none;
Β  Β  border-bottom: none;
Β  Β  list-style: none;
Β  Β  transition: all 0.3s ease-out;
Β 
Β  Β  /* Hiding */
Β  Β  max-height: 0;
Β  Β  overflow: hidden;
}

На этот Ρ€Π°Π· ΠΌΡ‹ Π½Π΅ измСняли Π½Π΅ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½ΠΎΡΡ‚ΡŒ Π΄ΠΎ 0, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΊΡ€Ρ‹Ρ‚ΡŒ мСню. ΠœΡ‹ установили max-height Ρ€Π°Π²Π½ΡƒΡŽ 0 ΠΈ overflow: hidden. ΠŸΠΎΡ‡Π΅ΠΌΡƒ установили max-height, Π° Π½Π΅ height? ΠŸΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΌΡ‹ Π½Π΅ Π·Π½Π°Π΅ΠΌ Ρ‚ΠΎΡ‡Π½ΡƒΡŽ высоту раскрытого списка.

ΠŸΡ€ΠΎΡΡ‚Ρ‹Π΅ стили для элСмСнтов списка.

.wrapper-dropdown-5 .dropdown li {
Β  Β  padding: 0 10px ;
}
Β 
.wrapper-dropdown-5 .dropdown li a {
Β  Β  display: block;
Β  Β  text-decoration: none;
Β  Β  color: #333;
Β  Β  padding: 10px 0;
Β  Β  transition: all 0.3s ease-out;
Β  Β  border-bottom: 1px solid #e6e8ea;
}
Β 
.wrapper-dropdown-5 .dropdown li:last-of-type a {
Β  Β  border: none;
}
Β 
.wrapper-dropdown-5 .dropdown li i {
Β  Β  margin-right: 5px;
Β  Β  color: inherit;
Β  Β  vertical-align: middle;
}
Β 
/* Hover state */
Β 
.wrapper-dropdown-5 .dropdown li:hover a {
Β  Β  color: #57a9d9;
}

А Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ, Π² Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠΌ состоянии:

/* Active state */
Β 
.wrapper-dropdown-5.active {
Β  Β  border-radius: 5px 5px 0 0;
Β  Β  background: #4cbeff;
Β  Β  box-shadow: none;
Β  Β  border-bottom: none;
Β  Β  color: white;
}
Β 
.wrapper-dropdown-5.active:after {
Β  Β  border-color: #82d1ff transparent;
}
Β 
.wrapper-dropdown-5.active .dropdown {
Β  Β  border-bottom: 1px solid rgba(0,0,0,0.2);
Β  Β  max-height: 400px;
}

Когда Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠΉ список ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚, ΠΌΡ‹ мСняСм Π½ΠΈΠΆΠ½ΠΈΠ΅ ΡƒΠ³Π»Ρ‹ ΠΊΠ½ΠΎΠΏΠΊΠΈ, Π΅Π΅ Ρ†Π²Π΅Ρ‚, Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ стрСлки ΠΈ Ρ†Π²Π΅Ρ‚ стрСлки ΠΈ удаляСм Π΅Ρ‘ Ρ‚Π΅Π½ΡŒ ΠΈ Π³Ρ€Π°Π½ΠΈΡ†Ρ‹.
И, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ мСню, ΠΌΡ‹ устанавливаСм max-height Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π³ΠΎ списка Ρ€Π°Π²Π½ΡƒΡŽ 400 пиксСлСй. ΠœΡ‹ ΠΌΠΎΠ³Π»ΠΈ Π±Ρ‹ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π΅Ρ‘ Ρ€Π°Π²Π½ΡƒΡŽ 500px ΠΈΠ»ΠΈ 1000px, это Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ значСния.

JavaScript

function DropDown(el) {
Β  Β  this.dd = el;
Β  Β  this.initEvents();
}
DropDown.prototype = {
Β  Β  initEvents : function() {
Β  Β  Β  Β  var obj = this;
Β 
Β  Β  Β  Β  obj.dd.on(‘click’, function(event){
Β  Β  Β  Β  Β  Β  $(this).toggleClass(‘active’);
Β  Β  Β  Β  Β  Β  event.stopPropagation();
Β  Β  Β  Β  });
Β  Β  }
}

ΠžΠ±Ρ€Π°Ρ‚Π½Π°Ρ ΡΠΎΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚ΡŒ

Π˜Ρ‚Π°ΠΊ, Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Ρƒ нас Π΅ΡΡ‚ΡŒ 5 Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΡ…ΡΡ списков, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π·Π°ΠΌΠ΅Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚, Π½ΠΎ ΠΊΠ°ΠΊ насчСт старых Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠ²?
Π­Ρ‚ΠΈ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Ρ‹ Π½Π΅ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡŽΡ‚, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, свойство opacity.

Π’ этом Π½Π°ΠΌ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Modernizr. Π“Ρ€ΡƒΠ±ΠΎ говоря, для Ρ‚Π΅Ρ…, ΠΊΡ‚ΠΎ Π½Π΅ Π·Π½Π°Π΅Ρ‚, Modernizr это Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° JavaScript, которая ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Π΅ HTML5 ΠΈ CSS3 свойства Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ.

Благодаря этому, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ «ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ» Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Ρƒ, Ссли Π²Ρ‹ Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚Π΅ *это* свойство, Ρ‚ΠΎ Π΄Π΅Π»Π°ΠΉΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅. НиТС ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ стилями для Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ свойства CSS:

/* НСт ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ CSS3 */
Β 
.no-opacity Β  Β  Β  .wrapper-dropdown-1 .dropdown,
.no-pointerevents .wrapper-dropdown-1 .dropdown {
Β  Β  display: none;
Β  Β  opacity: 1; /* If opacity support but no pointer-events support */
Β  Β  pointer-events: auto; /* If pointer-events support but no pointer-events support */
}
Β 
.no-opacity Β  Β  Β  .wrapper-dropdown-1.active .dropdown,
.no-pointerevents .wrapper-dropdown-1.active .dropdown {
Β  Β  display: block;
}

Если Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚Β opacity ΠΈΠ»ΠΈ pointer-events, Ρ‚ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ свойство display: block;. Ну ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅.

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅.

Π― надСюсь, Ρ‡Ρ‚ΠΎ эта ΡΡ‚Π°Ρ‚ΡŒΡ ΠΏΠΎΠΌΠΎΠ³Π»Π° Π²Π°ΠΌ ΠΏΠΎΠ½ΡΡ‚ΡŒ, ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠ΅ Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠ΅ΡΡ мСню. Как Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²ΠΈΠ΄Π΅Ρ‚ΡŒ, это довольно просто.

ДСмонстрация

Π‘ΠΊΠ°Ρ‡Π°Ρ‚ΡŒ исходныС Ρ„Π°ΠΉΠ»Ρ‹

ΠŸΠ΅Ρ€Π΅Π²ΠΎΠ΄ ΡΡ‚Π°Ρ‚ΡŒΠΈ с tympanus.net/codrops


Если Ρƒ Вас Π²ΠΎΠ·Π½ΠΈΠΊΠ»ΠΈ вопросы, Ρ‚ΠΎ для ΡΠΊΠΎΡ€Π΅ΠΉΡˆΠ΅Π³ΠΎ получСния ΠΎΡ‚Π²Π΅Ρ‚Π° Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅ΠΌ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ нашим Ρ„ΠΎΡ€ΡƒΠΌΠΎΠΌ

: элСмСнт HTML Select — HTML: язык Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠΈ гипСртСкста

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ HTML . Π•ΠΌΡƒ даСтся Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ id , Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ ΡΠ²ΡΠ·Π°Ρ‚ΡŒ с для Ρ†Π΅Π»Π΅ΠΉ доступности, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ name для прСдставлСния ΠΈΠΌΠ΅Π½ΠΈ связанной Ρ‚ΠΎΡ‡ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΎΡ‚ΠΏΡ€Π°Π²Π»Π΅Π½Π½ΠΎΠΉ Π½Π° сСрвСр. КаТдая опция мСню опрСдСляСтся элСмСнтом , Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹ΠΌ Π² ΠΈΠΌΠ΅Π΅Ρ‚ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для управлСния ΠΈΠΌ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, , нСсколько , Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ, ΠΌΠΎΠΆΠ½ΠΎ Π»ΠΈ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ нСсколько ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ², ΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ€ , Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ, сколько ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒΡΡ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ.Он Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠ² Π²Π²ΠΎΠ΄Π° ΠΎΠ±Ρ‰Π΅ΠΉ Ρ„ΠΎΡ€ΠΌΡ‹, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ трСбуСтся , ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΎ , автофокус ΠΈ Ρ‚. Π”.

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π²Π»ΠΎΠΆΠΈΡ‚ΡŒ элСмСнтов Π² элСмСнты , Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ Π³Ρ€ΡƒΠΏΠΏΡ‹ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅Π³ΠΎΡΡ списка.

Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ см. Π’ Ρ€Π°Π·Π΄Π΅Π»Π΅ Π’ΠΈΠ΄ΠΆΠ΅Ρ‚Ρ‹ собствСнных Ρ„ΠΎΡ€ΠΌ: Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅Π΅ΡΡ содСрТимоС.

Π­Ρ‚ΠΎΡ‚ элСмСнт Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Π΅ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Ρ‹.

Π°Π²Ρ‚ΠΎΠ·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅
DOMString , ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰Π°Ρ подсказку для Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ автозаполнСния ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ Π°Π³Π΅Π½Ρ‚Π°.Π‘ΠΌ. Атрибут автозаполнСния HTML для получСния ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ списка Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΈ подробностСй ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π°Π²Ρ‚ΠΎΠ·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅.
автофокус
Π­Ρ‚ΠΎΡ‚ логичСский Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ позволяСт ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ элСмСнт управлСния Ρ„ΠΎΡ€ΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΠΌΠ΅Ρ‚ΡŒ фокус Π²Π²ΠΎΠ΄Π° ΠΏΡ€ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ΅ страницы. Волько ΠΎΠ΄ΠΈΠ½ элСмСнт Ρ„ΠΎΡ€ΠΌΡ‹ Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ autofocus .
ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½
Π­Ρ‚ΠΎΡ‚ логичСский Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ с элСмСнтом управлСния.Если этот Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ Π½Π΅ ΡƒΠΊΠ°Π·Π°Π½, элСмСнт управлСния наслСдуСт свои настройки ΠΎΡ‚ содСрТащСго элСмСнта, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€
; Ссли Π½Π΅Ρ‚ содСрТащСго элСмСнта с установлСнным Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠΌ disabled , Ρ‚ΠΎ элСмСнт управлСния Π²ΠΊΠ»ΡŽΡ‡Π΅Π½.
Ρ„ΠΎΡ€ΠΌΠ°
Π­Π»Π΅ΠΌΠ΅Π½Ρ‚
, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠ²ΡΠ·Π°Ρ‚ΡŒ связан со своим ΠΏΡ€Π΅Π΄ΠΊΠΎΠΌ элСмСнтом, Ссли Π΅ΡΡ‚ΡŒ.)
Π­Ρ‚ΠΎΡ‚ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ позволяСт ΡΠ²ΡΠ·Π°Ρ‚ΡŒ элСмСнты с Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠΌ multiple :

ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ ΠΌΡ‹ΡˆΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΡƒΠ΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ клавиши Ctrl , Command ΠΈΠ»ΠΈ Shift (Π² зависимости ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ ΠΈΠΌΠ΅Π΅Ρ‚ смысл для вашСй ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы), Π° Π·Π°Ρ‚Π΅ΠΌ Ρ‰Π΅Π»ΠΊΠ°Ρ‚ΡŒ нСсколько ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ², Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ / ΠΎΡ‚ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΈΡ… Π²Ρ‹Π±ΠΎΡ€.

ΠŸΡ€Π΅Π΄ΡƒΠΏΡ€Π΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ : ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ Π²Ρ‹Π±ΠΎΡ€Π° Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… нСсмСТных элСмСнтов с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρ‹, описанный Π½ΠΈΠΆΠ΅, Π² настоящСС врСмя Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Firefox.

Π’Π°ΠΊΠΆΠ΅ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π’ macOS ярлыки Ctrl + Up ΠΈ Ctrl + Down ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ΡƒΡŽΡ‚ с ярлыками ОБ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ для ΠΎΠΊΠΎΠ½ Mission Control ΠΈ Application , поэтому Π²Π°ΠΌ придСтся Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π²Ρ‹ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ ΠΈΡ…, ΠΏΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ ΠΎΠ½ Π·Π°Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚.

ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ нСсколько смСТных элСмСнтов:

  • Ѐокусировка Π½Π° элСмСнтС (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π²ΠΊΠ»Π°Π΄ΠΊΠΈ ).
  • УдСрТивая Π½Π°ΠΆΠ°Ρ‚ΠΎΠΉ ΠΊΠ»Π°Π²ΠΈΡˆΡƒ Ctrl , Π·Π°Ρ‚Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ клавиши курсора Π²Π²Π΅Ρ€Ρ…, ΠΈ Π²Π½ΠΈΠ·, , Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ «сфокусированного» Π²Ρ‹Π±ΠΎΡ€Π°, Ρ‚.Π΅.Π΅. Ρ‚ΠΎΡ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π±Ρ€Π°Π½, Ссли Π²Ρ‹ Ρ€Π΅ΡˆΠΈΡ‚Π΅ это ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ. Π’Π°Ρ€ΠΈΠ°Π½Ρ‚ Π²Ρ‹Π±ΠΎΡ€Π° с фокусом выдСляСтся ΠΏΡƒΠ½ΠΊΡ‚ΠΈΡ€Π½Ρ‹ΠΌ ΠΊΠΎΠ½Ρ‚ΡƒΡ€ΠΎΠΌ Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ ссылка с фокусом Π½Π° ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Π΅.
  • НаТатиС ΠŸΡ€ΠΎΠ±Π΅Π» для Π²Ρ‹Π±ΠΎΡ€Π° / ΠΎΡ‚ΠΌΠ΅Π½Ρ‹ Π²Ρ‹Π±ΠΎΡ€Π° «сфокусированных» ΠΎΠΏΡ†ΠΈΠΉ Π²Ρ‹Π±ΠΎΡ€Π°.

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ слоТна, ΠΈ Π΅Π΅ Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ. Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΏΠΎΠ»Π½Ρ‹ΠΉ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ, Π²Π°ΠΌ слСдуСт Ρ€Π°ΡΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ использования Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ с Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΌΠΈ возмоТностями для стилизации Π²ΠΈΠ΄ΠΆΠ΅Ρ‚ΠΎΠ² Ρ„ΠΎΡ€ΠΌ ΠΈΠ»ΠΈ ΠΏΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π°Π·Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ собствСнноС Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅Π΅ΡΡ мСню с использованиСм нСсСмантичСских элСмСнтов, JavaScript ΠΈ WAI-ARIA для обСспСчСния сСмантики.

Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ ΠΏΠΎΠ»Π΅Π·Π½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ стилС .

Π‘Π°Π·ΠΎΠ²Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€

Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ создаСтся ΠΎΡ‡Π΅Π½ΡŒ простоС Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅Π΅ΡΡ мСню, Π²Ρ‚ΠΎΡ€ΠΎΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π²Ρ‹Π±Ρ€Π°Π½ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ.

 

  

Π Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ с нСсколькими функциями

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π±ΠΎΠ»Π΅Π΅ слоТСн ΠΈ дСмонстрируСт Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² элСмСнтС

Π’Ρ‹ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ:

  • МоТно Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ нСсколько ΠΎΠΏΡ†ΠΈΠΉ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΌΡ‹ Π²ΠΊΠ»ΡŽΡ‡ΠΈΠ»ΠΈ мноТСствСнный Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ .
  • Атрибут Ρ€Π°Π·ΠΌΠ΅Ρ€Π° Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠ΅ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ 4 строк; Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ всС Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹.
  • ΠœΡ‹ Π²ΠΊΠ»ΡŽΡ‡ΠΈΠ»ΠΈ элСмСнтов , Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚ΡŒ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ Π½Π° Ρ€Π°Π·Π½Ρ‹Π΅ Π³Ρ€ΡƒΠΏΠΏΡ‹. Π­Ρ‚ΠΎ чисто Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½Π°Ρ Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠ°, Π΅Π΅ визуализация ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ состоит ΠΈΠ· ΠΈΠΌΠ΅Π½ΠΈ Π³Ρ€ΡƒΠΏΠΏΡ‹, Π²Ρ‹Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΆΠΈΡ€Π½Ρ‹ΠΌ ΡˆΡ€ΠΈΡ„Ρ‚ΠΎΠΌ, ΠΈ отступа ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ².
  • ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ Β«Π₯омяк» Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹ΠΉ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ ΠΈ поэтому Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π²Ρ‹Π±Ρ€Π°Π½ Π²ΠΎΠΎΠ±Ρ‰Π΅.

Настройка стилСй Π²Ρ‹Π±ΠΎΡ€Π°

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ, ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ CSS ΠΈ JavaScript для прСдоставлСния Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΡ… стилСй для Π±Π»ΠΎΠΊΠ° ( s) Π² Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΡƒΡŽ ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΡƒ ΠΈ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ стандартноС ΠΎΠΆΠΈΠ΄Π°Π΅ΠΌΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ с использованиСм Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… элСмСнтов HTML ΠΈ JavaScript. Π­Ρ‚ΠΎ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя Π±Π°Π·ΠΎΠ²ΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π²ΠΊΠ»Π°Π΄ΠΎΠΊ для обСспСчСния доступности ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρ‹.

  • БопоставляСт Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ стандартныС Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Ρ‹ с Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ… Π½ΠΎΠ²Ρ‹Ρ… элСмСнтов для управлСния состояниСм ΠΈ CSS.
  • ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ Π½Π΅ всС встроСнныС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, это ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€ΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ. ИВ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ со стандартного HTML, Π½ΠΎ Ρ‚Π΅ ΠΆΠ΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ достигнуты, начиная с Π΄Π°Π½Π½Ρ‹Ρ… JSON, ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ HTML ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ.

    HTML
      <Ρ„ΠΎΡ€ΠΌΠ°>
     
    Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Ρ‹Π΅ элСмСнты управлСния <Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ name = 1A id = Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ autocomplete = off трСбуСтся >
    ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠ΅ элСмСнты управлСния <Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ name = "2A" autocomplete = "Π²Ρ‹ΠΊΠ»" трСбуСтся >
    CSS
      ΠΊΡƒΠ·ΠΎΠ² {
      сСмСйство ΡˆΡ€ΠΈΡ„Ρ‚ΠΎΠ²: Cambria, Cochin, Georgia, Times, 'Times New Roman', serif
    }
    
    .select: focus {
      Ρ†Π²Π΅Ρ‚ Π³Ρ€Π°Π½ΠΈΡ†Ρ‹: синий;
    }
    
    html body form fieldset # custom div.select [data-multiple] div.header {
      дисплСй: Π½Π΅Ρ‚;
    }
    
    html body form fieldset # custom div.select div.header {
      содСрТаниС: '↓';
      ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅: -webkit-inline-box;
      дисплСй: -ms-inline-flexbox;
      дисплСй: встроСнный Π³ΠΈΠ±ΠΊΠΈΠΉ;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      отступ: 0;
      ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅: ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅;
    }
    
    html body form fieldset # custom div.select div.header :: after {
      содСрТаниС: '↓';
      Π²Ρ‹Ρ€ΠΎΠ²Π½ΡΡ‚ΡŒ сСбя: Ρ€Π°ΡΡ‚ΡΠ½ΡƒΡ‚ΡŒ;
      дисплСй: гибкий;
      Π²Ρ‹Ρ€ΠΎΠ²Π½ΡΡ‚ΡŒ ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚: Ρ†Π΅Π½Ρ‚Ρ€;
      justify-content: center;
      justify-items: center;
      align-items: center;
      ΠΎΠ±ΠΈΠ²ΠΊΠ°:.5em;
    }
    
    html body form fieldset # custom div.select div.header: hover: after {
      Ρ†Π²Π΅Ρ‚ Ρ„ΠΎΠ½Π°: синий;
    }
    
    .select .header select {
      -webkit-appearance: Π½Π΅Ρ‚;
      -ΠΌΠΎΠ·-внСшний Π²ΠΈΠ΄: Π½Π΅Ρ‚;
      внСшний Π²ΠΈΠ΄: Π½Π΅Ρ‚;
      сСмСйство ΡˆΡ€ΠΈΡ„Ρ‚ΠΎΠ²: Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ;
      Ρ€Π°Π·ΠΌΠ΅Ρ€ ΡˆΡ€ΠΈΡ„Ρ‚Π°: Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ;
      отступ: 0;
      ΡˆΠΈΡ€ΠΈΠ½Π° Π³Ρ€Π°Π½ΠΈΡ†Ρ‹: 0;
      ΡˆΠΈΡ€ΠΈΠ½Π°: 100%;
      Π³ΠΈΠ±ΠΊΠΎΡΡ‚ΡŒ: 1;
      дисплСй: Π½Π΅Ρ‚;
    }
    
    .select .header select optgroup {
      дисплСй: Π½Π΅Ρ‚;
    }
    
    .select select div.option {
      дисплСй: Π½Π΅Ρ‚;
    }
    
    html body form fieldset # custom div.select {
      Π²Ρ‹Π±ΠΎΡ€ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ: Π½Π΅Ρ‚;
      Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΊΠΎΡ€ΠΎΠ±ΠΊΠΈ: Ρ€Π°ΠΌΠΊΠ°-Ρ€Π°ΠΌΠΊΠ°;
      ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅: ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅;
      радиус Π³Ρ€Π°Π½ΠΈΡ†Ρ‹: 4 пиксСля;
      ΡΡ‚ΠΈΠ»ΡŒ Π³Ρ€Π°Π½ΠΈΡ†Ρ‹: Ρ‚Π²Π΅Ρ€Π΄Ρ‹ΠΉ;
      ΡˆΠΈΡ€ΠΈΠ½Π° Π³Ρ€Π°Π½ΠΈΡ†Ρ‹: 0;
      Ρ†Π²Π΅Ρ‚ Π³Ρ€Π°Π½ΠΈΡ†Ρ‹: сСрый;
      ΡˆΠΈΡ€ΠΈΠ½Π°: Π°Π²Ρ‚ΠΎ;
      дисплСй: встроСнный Π±Π»ΠΎΠΊ;
    }
    
    html body form fieldset # custom div.select: focus {
      Ρ†Π²Π΅Ρ‚ Π³Ρ€Π°Π½ΠΈΡ†Ρ‹: синий;
    }
    
    html body form fieldset # custom div.select:hover {
      Ρ†Π²Π΅Ρ‚ Π³Ρ€Π°Π½ΠΈΡ†Ρ‹: синий;
    }
    
    html body form fieldset # custom div.select [data-open] {
      Π³Ρ€Π°Π½ΠΈΡ†Π°-Π½ΠΈΠΆΠ½ΠΈΠΉ-Π»Π΅Π²Ρ‹ΠΉ-радиус: 0;
      Π³Ρ€Π°Π½ΠΈΡ†Π°-Π½ΠΈΠΆΠ½ΠΈΠΉ-ΠΏΡ€Π°Π²Ρ‹ΠΉ-радиус: 0;
    }
    
    html body form fieldset # custom div.select [ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ…] datalist {
      дисплСй: Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹ΠΉ;
    }
    
    html body form fieldset # custom div.select datalist {
      -webkit-appearance: Π½Π΅Ρ‚;
      -ΠΌΠΎΠ·-внСшний Π²ΠΈΠ΄: Π½Π΅Ρ‚;
      внСшний Π²ΠΈΠ΄: Π½Π΅Ρ‚;
      позиция: Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½Π°Ρ;
      ΡΡ‚ΠΈΠ»ΡŒ Π³Ρ€Π°Π½ΠΈΡ†Ρ‹: Ρ‚Π²Π΅Ρ€Π΄Ρ‹ΠΉ;
      ΡˆΠΈΡ€ΠΈΠ½Π° Π³Ρ€Π°Π½ΠΈΡ†Ρ‹: 1px;
      Ρ†Π²Π΅Ρ‚ Π³Ρ€Π°Π½ΠΈΡ†Ρ‹: сСрый;
      слСва: 0;
      дисплСй: Π½Π΅Ρ‚;
      ΡˆΠΈΡ€ΠΈΠ½Π°: 100%;
      Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΊΠΎΡ€ΠΎΠ±ΠΊΠΈ: Ρ€Π°ΠΌΠΊΠ°-Ρ€Π°ΠΌΠΊΠ°;
      z-индСкс: 2;
      Π³Ρ€Π°Π½ΠΈΡ†Π°-Π½ΠΈΠΆΠ½ΠΈΠΉ-Π»Π΅Π²Ρ‹ΠΉ-радиус: 4px;
      Π³Ρ€Π°Π½ΠΈΡ†Π°-Π½ΠΈΠΆΠ½ΠΈΠΉ-ΠΏΡ€Π°Π²Ρ‹ΠΉ-радиус: 4px;
    }
    
    html body form fieldset # custom div.Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ datalist div.option {
      Ρ†Π²Π΅Ρ‚ Ρ„ΠΎΠ½Π°: Π±Π΅Π»Ρ‹ΠΉ;
      Π½ΠΈΠΆΠ½Π΅Π΅ ΠΏΠΎΠ»Π΅: 1px;
      курсор: ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ;
      Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅: 0.5em;
      ΡˆΠΈΡ€ΠΈΠ½Π° Π³Ρ€Π°Π½ΠΈΡ†Ρ‹: 0;
    }
    
    html body form fieldset # custom div.select datalist div.option: hover {
      Ρ†Π²Π΅Ρ‚ Ρ„ΠΎΠ½Π°: синий;
      Ρ†Π²Π΅Ρ‚ Π±Π΅Π»Ρ‹ΠΉ;
    }
    
    html body form fieldset # custom div.select datalist div.option: focus {
      Ρ†Π²Π΅Ρ‚ Ρ„ΠΎΠ½Π°: синий;
      Ρ†Π²Π΅Ρ‚ Π±Π΅Π»Ρ‹ΠΉ;
    }
    
    html body form fieldset # custom div.select datalist div.option: checked {
      Ρ†Π²Π΅Ρ‚ Ρ„ΠΎΠ½Π°: синий;
      Ρ†Π²Π΅Ρ‚ Π±Π΅Π»Ρ‹ΠΉ;
    }
    
    html body form fieldset # custom div.Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ div.optgroup div.option [Π΄Π°Π½Π½Ρ‹Π΅ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹] {
      Ρ†Π²Π΅Ρ‚: сСрый;
    }
    
    html body form fieldset # custom div.select div.optgroup div.option [Π΄Π°Π½Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€Π΅Π½Ρ‹] {
      Ρ†Π²Π΅Ρ‚ Ρ„ΠΎΠ½Π°: синий;
      Ρ†Π²Π΅Ρ‚ Π±Π΅Π»Ρ‹ΠΉ;
    }
    
    html body form fieldset # custom div.select div.optgroup div.label {
      font-weight: ΠΆΠΈΡ€Π½Ρ‹ΠΉ;
    }
    
    html body form fieldset # custom div.select div.optgroup div.option div.label {
      font-weight: Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ;
      Π½Π°Π±ΠΈΠ²ΠΊΠ°: .25em;
    }
    
    html body form fieldset # custom div.select div.header {
      Π³ΠΈΠ±ΠΊΠΎΡΡ‚ΡŒ: 1;
      дисплСй: гибкий;
      ΡˆΠΈΡ€ΠΈΠ½Π°: Π°Π²Ρ‚ΠΎ;
      Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΊΠΎΡ€ΠΎΠ±ΠΊΠΈ: Ρ€Π°ΠΌΠΊΠ°-Ρ€Π°ΠΌΠΊΠ°;
      ΡˆΠΈΡ€ΠΈΠ½Π° Π³Ρ€Π°Π½ΠΈΡ†Ρ‹: 1px;
      ΡΡ‚ΠΈΠ»ΡŒ Π³Ρ€Π°Π½ΠΈΡ†Ρ‹: наслСдованиС;
      Ρ†Π²Π΅Ρ‚ Π³Ρ€Π°Π½ΠΈΡ†Ρ‹: Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ;
      Π³Ρ€Π°Π½ΠΈΡ†Π°-радиус: Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ;
    }
    
    html body form fieldset # custom div.Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ div.header span {
      Π³ΠΈΠ±ΠΊΠΎΡΡ‚ΡŒ: 1;
      Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅: .5em;
    }  
    JavaScript
      const selects = custom.querySelectorAll ('Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ');
    for (const select of selects) {
        const div = document.createElement ('div');
        const header = document.createElement ('div');
        const datalist = document.createElement ('datalist');
        const optgroups = select.querySelectorAll ('optgroup');
        const span = document.createElement ('Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½');
        const options = select.options;
        const parent = select.parentElement;
        const multiple = select.hasAttribute ('нСсколько');
        const onclick = function (e) {
            const disabled = this.hasAttribute ('Π΄Π°Π½Π½Ρ‹Π΅ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹');
            select.value = this.dataset.value;
            span.innerText = this.dataset.label;
            Ссли (ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΎ) Π²ΠΎΠ·Π²Ρ€Π°Ρ‚;
            if (multiple) {
                if (e.shiftKey) {
                    const checked = this.hasAttribute ("Π΄Π°Π½Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€Π΅Π½Ρ‹");
                    if (checked) {
                        this.removeAttribute ("Π΄Π°Π½Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€Π΅Π½Ρ‹");
                    } Π΅Ρ‰Π΅ {
                        это.setAttribute ("Π΄Π°Π½Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€Π΅Π½Ρ‹", "");
                    };
                } Π΅Ρ‰Π΅ {
                    const options = div.querySelectorAll ('. option');
                    for (i = 0; i  
    Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚

    Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ BCD Π·Π°Π³Ρ€ΡƒΠΆΠ°ΡŽΡ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€

    Π½ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ - HTML-Ρ„ΠΎΡ€ΠΌΡ‹: Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠ΅ΡΡ мСню

    Π’Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠ΅ мСню ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ… для Π·Π°Ρ…Π²Π°Ρ‚Π° ΠΎΡ‚Π²Π΅Ρ‚ΠΎΠ², для ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π΅ΡΡ‚ΡŒ ΠΎΠ΄ΠΈΠ½ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ ΠΎΡ‚Π²Π΅Ρ‚ ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… ΠΎΡ‚Π²Π΅Ρ‚ΠΎΠ². Π₯ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ этого - запрос ΠΎ ΠΏΡ€ΠΎΠ²ΠΈΠ½Ρ†ΠΈΠΈ, ΡˆΡ‚Π°Ρ‚Π΅ ΠΈΠ»ΠΈ странС посСтитСля.

    РассмотрСниС Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²

    ΠŸΡ€ΠΈ создании Ρ„ΠΎΡ€ΠΌΡ‹ Π²Π°ΠΆΠ½ΠΎ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ всС возмоТности. ΠœΡ‹ ΠΌΠΎΠ³Π»ΠΈ Π±Ρ‹ просто ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ тСкстовоС ΠΏΠΎΠ»Π΅, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΌΠΎΠ³ Π±Ρ‹ ввСсти Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ²ΠΈΠ½Ρ†ΠΈΠΈ, Π½ΠΎ это допускаСт Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ Π΄ΠΎΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΠΎΠΏΠ΅Ρ‡Π°Ρ‚ΠΊΡƒ (Ρ‡Ρ‚ΠΎ становится ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΎΠΉ, Ссли эта информация вводится нСпосрСдствСнно Π² Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ… Π±Π΅Π· контроля Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΠ°). ΠœΡ‹ ΠΌΠΎΠ³Π»ΠΈ Π±Ρ‹ ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΡ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ€ тСкстового поля Π΄ΠΎ Π΄Π²ΡƒΡ… символов ΠΈ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠΈΡ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ просто ввСсти Π°Π±Π±Ρ€Π΅Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρƒ ΠΏΡ€ΠΎΠ²ΠΈΠ½Ρ†ΠΈΠΈ ΠΈΠ»ΠΈ ΡˆΡ‚Π°Ρ‚Π°: хотя это сниТаСт Π²Π΅Ρ€ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ ошибки, ΠΎΠ½Π° Π½Π΅ удаляСтся.

    Одно ΠΈΠ· Π»ΡƒΡ‡ΡˆΠΈΡ… Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ для вопроса Π² Ρ„ΠΎΡ€ΠΌΠ΅, для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π΅ΡΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ ΠΎΡ‚Π²Π΅Ρ‚ ΠΈΠ· большого количСства возмоТностСй, - это Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅Π΅ΡΡ мСню.

    Π Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π°ΡΡΡ Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠ°

    Π’ Ρ„ΠΎΡ€ΠΌΠ΅ HTML это создаСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ‚Π΅Π³Π° , <Π²Π°Ρ€ΠΈΠ°Π½Ρ‚> ΠΠ»ΡŒΠ±Π΅Ρ€Ρ‚Π°

    Π‘Π°ΠΌΠ° Ρ„ΠΎΡ€ΠΌΠ° Π½Π΅ Π·Π½Π°Π΅Ρ‚ тСкста ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΌ ΠΈ Π·Π°ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΌ Ρ‚Π΅Π³Π°ΠΌΠΈ option . Π₯отя ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π²Ρ‹Π±Ρ€Π°Π½ нашим ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ, фактичСскиС Π΄Π°Π½Π½Ρ‹Π΅ Π½Π΅ Π±ΡƒΠ΄ΡƒΡ‚ ΠΎΡ‚ΠΏΡ€Π°Π²Π»Π΅Π½Ρ‹ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΡƒ Ρ„ΠΎΡ€ΠΌ .php скрипт, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ Π΄Π°Π½Π½Ρ‹Π΅ Π² Ρ„ΠΎΡ€ΠΌΠ΅. ΠœΡ‹, вСроятно, Π² любом случаС Π½Π΅ Ρ…ΠΎΡ‚ΠΈΠΌ слова Β«ΠΠ»ΡŒΠ±Π΅Ρ€Ρ‚Π°Β»; Β«ABΒ» Π±Ρ‹Π»ΠΎ Π±Ρ‹ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚ΠΈΡ‚Π΅Π»ΡŒΠ½Π΅Π΅ для добавлСния Π² список рассылки ΠΈΠ»ΠΈ Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ…. Для этого ΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠ² ΠΊ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΠ· этих ΠΎΠΏΡ†ΠΈΠΉ:

        

    (ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ value Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ установки тСкста для тСкстового поля ).

    НаконСц, пСрвая опция Π² нашСм Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅ΠΌ мСню Π±ΡƒΠ΄Π΅Ρ‚ автоматичСски Π²Ρ‹Π±Ρ€Π°Π½Π° ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ. Π­Ρ‚ΠΎ Π½Π΅ всСгда Ρ…ΠΎΡ€ΠΎΡˆΠΎ. Π’ΠΎ-ΠΏΠ΅Ρ€Π²Ρ‹Ρ…, ΠΏΠΎΠΌΠ½ΠΈΡ‚Π΅ наши прСдполоТСния ΠΎ нашСм ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅. Если ΠΌΡ‹ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π²Ρ‹Π±Ρ€Π°Π»ΠΈ, Π²ΠΏΠΎΠ»Π½Π΅ вСроятно, Ρ‡Ρ‚ΠΎ ΠΎΠ½ пропустит это, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΡΠΊΠΎΠ½ΠΎΠΌΠΈΡ‚ΡŒ врСмя, ΠΈΠ»ΠΈ просто пропустит. Π›ΡƒΡ‡ΡˆΠ΅ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠΈΡ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π²Ρ‹Π±ΠΎΡ€ ΠΈ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ эту подсказку Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠΉ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, Ссли Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²Ρ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π±Ρ‹Ρ‚ΡŒ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ ΡƒΠ²Π΅Ρ€Π΅Π½Ρ‹, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ΄Π°Π²Π»ΡΡŽΡ‰Π΅Π΅ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ рСспондСнтов вашСй Ρ„ΠΎΡ€ΠΌΡ‹ Π±ΡƒΠ΄ΡƒΡ‚ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Π·Π°Ρ€Π°Π½Π΅Π΅ Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹ΠΌ критСриям.

        

    Π’Ρ‹ Π½Π°ΠΉΠ΄Π΅Ρ‚Π΅ ΡƒΡ‡Π΅Π±Π½ΠΈΠΊΠΈ ΠΈ ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½ΡƒΡŽ справку, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… содСрТится ΠΊΠΎΠ΄, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΉ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ нСсколько Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² Π² Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΌΡΡ спискС ΠΈΠ»ΠΈ ΠΏΡ€Π΅Π²Ρ€Π°Ρ‰Π°ΡŽΡ‰ΠΈΠΉ Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉΡΡ список Π²Ρ‹Π±ΠΎΡ€Π° Π² интСрфСйс с ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‚ΠΊΠΎΠΉ. Π’ΠΎΠΎΠ±Ρ‰Π΅ говоря, такая ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ° катСгоричСски Π½Π΅ рСкомСндуСтся. Π›ΡŽΠ΄ΠΈ ΡΠ±ΠΈΠ²Π°ΡŽΡ‚ΡΡ с Ρ‚ΠΎΠ»ΠΊΡƒ, ΠΊΠΎΠ³Π΄Π° ΠΈΡ… ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ ошибкам ΠΏΡ€ΠΈ Π²Π²ΠΎΠ΄Π΅ Π΄Π°Π½Π½Ρ‹Ρ….

    Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ optgroup Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для обозначСния Π³Ρ€ΡƒΠΏΠΏ связанных ΠΎΠΏΡ†ΠΈΠΉ Π² Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΌΡΡ спискС; саму optgroup нСльзя Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ. Π”ΠΎΠ²ΠΎΠ»ΡŒΠ½ΠΎ сбиваСт с Ρ‚ΠΎΠ»ΠΊΡƒ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ optgroup ΠΈΠΌΠ΅Π΅Ρ‚ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚, label , ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для указания ссылки Π½Π° Π³Ρ€ΡƒΠΏΠΏΡƒ.

    НапримСр, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ ΡˆΡ‚Π°Ρ‚Ρ‹ Π² БША ΠΈ ΠΏΡ€ΠΎΠ²ΠΈΠ½Ρ†ΠΈΠΈ / Ρ‚Π΅Ρ€Ρ€ΠΈΡ‚ΠΎΡ€ΠΈΠΈ ΠšΠ°Π½Π°Π΄Ρ‹ Π² Ρ‚ΠΎΠΌ ΠΆΠ΅ Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΌΡΡ спискС , ΠΌΡ‹ ΠΌΠΎΠ³Π»ΠΈ Π±Ρ‹ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅.

      
      

    Π’ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ Ρ‚Π°ΠΊ:

    Π¨Ρ‚Π°Ρ‚ / провинция / тСрритория - Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ ΠΎΠ΄ΠΈΠ½ - Алабама, ΠšΠ°Π»ΠΈΡ„ΠΎΡ€Π½ΠΈΡβ€¦ ΠΎΡΡ‚Π°Π²ΡˆΠΈΠ΅ΡΡ ΡˆΡ‚Π°Ρ‚Ρ‹ БША… ΠΠ»ΡŒΠ±Π΅Ρ€Ρ‚Π°, Британская ΠšΠΎΠ»ΡƒΠΌΠ±ΠΈΡβ€¦ ΠΎΡΡ‚Π°Π²ΡˆΠΈΠ΅ΡΡ ΠΏΡ€ΠΎΠ²ΠΈΠ½Ρ†ΠΈΠΈ ΠΈ тСрритории…

    Для Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ мСню, Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π»ΠΈΠ½Π½ΠΎΠ΅ ΠΈ слоТноС, ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ рСкомСндуСтся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ JavaScript для динамичСского измСнСния содСрТимоС Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ Π½Π° основС Π²Ρ‹Π±ΠΎΡ€Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Ρ€Π°Π½Π΅Π΅ Π² Ρ„ΠΎΡ€ΠΌΠ΅.НапримСр, Ссли ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π²Ρ‹Π±Π΅Ρ€Π΅Ρ‚ свою страну сначала , это Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΡ‚ΡŒ количСство Π²ΠΈΠ΄ΠΈΠΌΡ‹Ρ… ΠΎΠΏΡ†ΠΈΠΉ Π² Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΌΡΡ спискС Β«ΡˆΡ‚Π°Ρ‚Β», Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ Ρ‚Π΅Ρ€Ρ€ΠΈΡ‚ΠΎΡ€ΠΈΠΈ Π² ΠΈΡ… ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ странС. Π­Ρ‚ΠΎ обСспСчиваСт Π±ΠΎΠ»Π΅Π΅ ΠΈΠ½Ρ‚Π΅Π»Π»Π΅ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΈ ΠΈΠ½Ρ‚ΡƒΠΈΡ‚ΠΈΠ²Π½ΠΎ ΠΏΠΎΠ½ΡΡ‚Π½ΡƒΡŽ Ρ„ΠΎΡ€ΠΌΡƒ ΠΈ Π»ΡƒΡ‡ΡˆΠΈΠΉ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ интСрфСйс.

    ЕстСствСнно, мСню Π² HTML).Π€Π»Π°ΠΆΠΎΠΊ * Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π²Ρ‹Π±Ρ€Π°Π» хотя Π±Ρ‹ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Ρ„Π»Π°ΠΆΠΊΠΎΠ².

    radio прСдставляСт Π³Ρ€ΡƒΠΏΠΏΡƒ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»Π΅ΠΉ ( Π² HTML). ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π³Ρ€ΡƒΠΏΠΏΠ° ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»Π΅ΠΉ, СстСствСнно, трСбуСтся, Ρ‚Π΅Π³ Ρ„ΠΎΡ€ΠΌΡ‹ radio Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΊΠ°ΠΊ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ ΠΏΠΎΠ»Π΅. РСкомСндуСтся ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ Π² Π³Ρ€ΡƒΠΏΠΏΠ΅ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»Π΅ΠΉ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ: 1 .

    ΠžΠΏΡ†ΠΈΡ ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ОписаниС
    id: (id) id: foo id Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π° элСмСнта ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠΈ.
    класс: (класс) класс: bar класс Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π° элСмСнта ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠΈ. Π§Ρ‚ΠΎΠ±Ρ‹ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π΄Π²Π° ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ классов, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ нСсколько ΠΎΠΏΡ†ΠΈΠΉ class: .
    ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ: (число) ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ: 2
    ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ: 1_2_3
    ΠŸΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹. Π¦Π΅Π»ΠΎΠ΅ число послС ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ: - это позиция Π² порядкС элСмСнтов.1 - пСрвая. Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π²Ρ‹Π΄Π΅Π»ΠΈΡ‚ΡŒ Π΄Π²Π° ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ элСмСнта, ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚Π΅ Ρ†Π΅Π»Ρ‹Π΅ числа с ΠΏΠΎΠ΄Ρ‡Π΅Ρ€ΠΊΠΈΠ²Π°Π½ΠΈΠ΅ΠΌ (_), ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ : 1_2_3 .
    label_first По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Ρ„Π»Π°ΠΆΠΎΠΊ ΠΈΠ»ΠΈ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»ΡŒ ставятся ΠΏΠ΅Ρ€Π²Ρ‹ΠΌΠΈ, Π° ΠΌΠ΅Ρ‚ΠΊΠ° - послСднСй. Π”ΠΎΠ±Π°Π²ΠΈΠ² ΠΎΠΏΡ†ΠΈΡŽ label_first , Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΡ‚ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΈΡ….
    use_label_element ΠžΠ±Π΅Ρ€Π½ΠΈΡ‚Π΅ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ„Π»Π°ΠΆΠΎΠΊ ΠΈ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»ΡŒ с Ρ‚Π΅Π³ΠΎΠΌ .
    ΡΠΊΡΠΊΠ»ΡŽΠ·ΠΈΠ²Π½Ρ‹ΠΉ Π‘Π΄Π΅Π»Π°Ρ‚ΡŒ Ρ„Π»Π°ΠΆΠΊΠΈ ΡΠΊΡΠΊΠ»ΡŽΠ·ΠΈΠ²Π½Ρ‹ΠΌΠΈ. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ устанавливаСтС Ρ„Π»Π°ΠΆΠΎΠΊ Π² Π³Ρ€ΡƒΠΏΠΏΠ΅, Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Π±ΡƒΠ΄ΡƒΡ‚ ΠΎΡ‡ΠΈΡ‰Π΅Π½Ρ‹, поэтому Π³Ρ€ΡƒΠΏΠΏΠ° ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ состояниС с Π½ΡƒΠ»Π΅Π²Ρ‹ΠΌ ΠΈΠ»ΠΈ ΠΎΠ΄Π½ΠΈΠΌ Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹ΠΌ. Π­Ρ‚ΠΎ ΡƒΠ»ΠΎΠ²ΠΊΠ° JavaScript, поэтому Π±Π΅Π· JavaScript ΠΎΠ½ Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚. radio form-tags Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ эту ΠΎΠΏΡ†ΠΈΡŽ.
    free_text Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ свободноС тСкстовоС ΠΏΠΎΠ»Π΅ для Π²Π²ΠΎΠ΄Π° ΠΊ послСднСму элСмСнту.
    Π΄Π°Π½Π½Ρ‹Π΅: (имя) Π΄Π°Π½Π½Ρ‹Π΅: страны ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ значСния ΠΈΠ· Листа.

    Π­Ρ‚ΠΈ Ρ‚ΠΈΠΏΡ‹ Ρ‚Π΅Π³ΠΎΠ² ΠΈΠΌΠ΅ΡŽΡ‚ ΠΎΠ΄Π½ΠΎ ΠΈΠ»ΠΈ нСсколько Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, ΠΈ эти значСния Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π² качСствС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΈ ΠΌΠ΅Ρ‚ΠΎΠΊ Ρ„Π»Π°ΠΆΠΊΠΎΠ² ΠΈΠ»ΠΈ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»Π΅ΠΉ.

    ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

     [Ρ„Π»Π°ΠΆΠΎΠΊ ваша страна "ΠšΠΈΡ‚Π°ΠΉ" "Индия" "Π‘Π°Π½-ΠœΠ°Ρ€ΠΈΠ½ΠΎ"] 
    Π Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠ΅ΡΡ мСню

    Как select , Ρ‚Π°ΠΊ ΠΈ select * ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ собой Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅Π΅ΡΡ мСню ( являСтся ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΌ элСмСнтом Π²Π²ΠΎΠ΄Π° для ΠΈΠΌΠ΅Π½ΠΈ, Ρ„Π°ΠΌΠΈΠ»ΠΈΠΈ, страны, чисСл ΠΈ символов.Π’ΠΈΠΏ Π²Π²ΠΎΠ΄Π° ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ - тСкст. Π”Π°ΠΆΠ΅ Ссли ΠΌΡ‹ пропустим Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ Ρ‚ΠΈΠΏΠ° Π² элСмСнтС Π²Π²ΠΎΠ΄Π°, Ρ‚ΠΈΠΏ Π²Π²ΠΎΠ΄Π° ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ - тСкст. Но всС Ρ€Π°Π²Π½ΠΎ рСкомСндуСтся ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ Ρ‚ΠΈΠΏΠ° Π² элСмСнтС Π²Π²ΠΎΠ΄Π° .

    Π­Ρ‚ΠΈΠΊΠ΅Ρ‚ΠΊΠ°

    Π―Ρ€Π»Ρ‹ΠΊ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для записи содСрТимого нСпосрСдствСнно ΠΏΠ΅Ρ€Π΅Π΄ тСкстовым ΠΏΠΎΠ»Π΅ΠΌ. Π§Ρ‚ΠΎΠ±Ρ‹ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΡƒΡŽ ΠΌΠ΅Ρ‚ΠΊΡƒ, помСститС Π²Π²ΠΎΠ΄ Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΌΠ΅Ρ‚ΠΊΠΈ ΠΈΠ»ΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π° for Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΌΠ΅Ρ‚ΠΊΠΈ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρƒ элСмСнта управлСния Π²Π²ΠΎΠ΄ΠΎΠΌ.

    Π’Π²ΠΎΠ΄ Π½Π° этикСткС
     
    
    
      
    Π’Ρ…ΠΎΠ΄ Π·Π° ΠΏΡ€Π΅Π΄Π΅Π»Π°ΠΌΠΈ ΠΌΠ΅Ρ‚ΠΊΠΈ
     
    
    
     
    
      

    Π’ΠΈΠΏ Π²Π²ΠΎΠ΄Π° тСкста со Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ

    Атрибут значСния Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π²Π½ΡƒΡ‚Ρ€ΠΈ Π²Π²ΠΎΠ΄Π° ΠΈΠ»ΠΈ тСкстового поля.ΠžΠ±Ρ‹Ρ‡Π½ΠΎ ΠΌΡ‹ просим ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ввСсти значСния, Π½ΠΎ Ссли Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ фиксировано, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ значСния.

     
    <Ρ„ΠΎΡ€ΠΌΠ°>
        
        
    
        
        
    
      

    Максимальная длина

    maxlength Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для ограничСния количСства символов Π² тСкстовом ΠΏΠΎΠ»Π΅. maxlength Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ - это число. Атрибут Maxlength ΠΏΠΎΠ»Π΅Π·Π΅Π½ для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Ρ„ΠΎΡ€ΠΌΡ‹.

    Π’Ρ…ΠΎΠ΄ с максимальной Π΄Π»ΠΈΠ½ΠΎΠΉ

     
    <Ρ„ΠΎΡ€ΠΌΠ°>
    
    
    
    
    
    
      

    Π’ΠΈΠΏ Π²Π²ΠΎΠ΄Π° ΠŸΠ°Ρ€ΠΎΠ»ΡŒ

    ΠŸΠ°Ρ€ΠΎΠ»ΡŒ Ρ‚ΠΈΠΏΠ° Π²Π²ΠΎΠ΄Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для записи ΠΏΠ°Ρ€ΠΎΠ»Π΅ΠΉ.Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ пароля записываСтся Π² Π·Π°ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½Π½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΠ΅ . Ρ‚.Π΅. ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π²ΠΈΠ΄Π΅Ρ‚ΡŒ, ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠ»ΠΈ Π²Ρ‹Ρ€Π΅Π·Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ пароля ΠΈΠ· пароля Ρ‚ΠΈΠΏΠ° Π²Π²ΠΎΠ΄Π° .

     
    <Ρ„ΠΎΡ€ΠΌΠ°>
        
        
    
    
      

    Π’ΠΈΠΏ Π²Π²ΠΎΠ΄Π° Π€Π°ΠΉΠ»

    Π€Π°ΠΉΠ» Ρ‚ΠΈΠΏΠ° Π²Π²ΠΎΠ΄Π° позволяСт ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ Π²Ρ‹Π±ΠΈΡ€Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ» ΠΈΠ· своСй систСмы.Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ , Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ Ρ€Π΅Π·ΡŽΠΌΠ΅, Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ Π²ΠΈΠ΄Π΅ΠΎ ΠΈΠ»ΠΈ Π°ΡƒΠ΄ΠΈΠΎ ΠΈ Ρ‚. Π”.

    Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ для Ρ„Π°ΠΉΠ»Π° Ρ‚ΠΈΠΏΠ° Π²Π²ΠΎΠ΄Π° - Β«Π€Π°ΠΉΠ» Π½Π΅ Π²Ρ‹Π±Ρ€Π°Π½Β». ПослС Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Ρ„Π°ΠΉΠ»Π° имя Ρ„Π°ΠΉΠ»Π° замСняСт этот тСкст, Π·Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ слСдуСт Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅.

     
    <Ρ„ΠΎΡ€ΠΌΠ°>
        
        
    
      

    Π€Π°ΠΉΠ» Π²Ρ…ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ° с нСсколькими

     
    <Ρ„ΠΎΡ€ΠΌΠ°>
        
        
    
      


    Кнопки Ρ€Π°Π΄ΠΈΠΎ

    Π Π°Π΄ΠΈΠΎΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для Π²Ρ‹Π±ΠΎΡ€Π° ΠΎΠ΄Π½ΠΎΠ³ΠΎ элСмСнта срСди Π³Ρ€ΡƒΠΏΠΏΡ‹.
    Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ΡŒ ΠΎΠΊΠ½Ρƒ Π²Ρ‹Π±ΠΈΡ€Π°Ρ‚ΡŒ ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π΄ΠΈΠΎΠΌΠΎΠ΄ΡƒΠ»ΡŒ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ ΠΈΠΌΠ΅Π½ΠΈ с ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹ΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ Π½Π° ΠΎΠ±ΠΎΠΈΡ… Ρ€Π°Π΄ΠΈΠΎΠ²Ρ…ΠΎΠ΄Π°Ρ….

    Π Π°Π΄ΠΈΠΎΠΊΠ½ΠΎΠΏΠΊΠ° для Π²Ρ‹Π±ΠΎΡ€Π° ΠΏΠΎΠ»Π°

    Π Π°Π΄ΠΈΠΎΠΊΠ½ΠΎΠΏΠΊΠ° для Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… вопросов


    Π€Π»Π°ΠΆΠΎΠΊ

    Π€Π»Π°ΠΆΠΎΠΊ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Π²Ρ‹Π±ΠΎΡ€Π° Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ², Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»Ρ.Π˜Ρ… ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‚ΠΌΠ΅Ρ‡Π°Ρ‚ΡŒ ΠΈ ΡΠ½ΠΈΠΌΠ°Ρ‚ΡŒ. ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ„Π»Π°ΠΆΠΎΠΊ для Ρ…ΠΎΠ±Π±ΠΈ, интСрСсов, условий ΠΈ Ρ‚. Π”.

    Π€Π»Π°ΠΆΠΎΠΊ Ρ„ΠΎΡ€ΠΌΡ‹

     
    
    
      

    ЧСкбокс с ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹ΠΌ

    Checbox Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹ΠΉ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ .Π€Π»Π°ΠΆΠΎΠΊ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ установлСн, ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ установлСнный Ρ„Π»Π°ΠΆΠΎΠΊ останСтся установлСнным, Π° снятый Ρ„Π»Π°ΠΆΠΎΠΊ останСтся снятым. Π‘ΠΌ. ΠŸΡ€ΠΈΠΌΠ΅Ρ€

    Π€Π»Π°ΠΆΠΎΠΊ с ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΊΠΎΠΉ

    БостояниС Ρ„Π»Π°ΠΆΠΊΠ° ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π½Π΅ ΠΎΡ‚ΠΌΠ΅Ρ‡Π΅Π½ΠΎ. Но ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ состояниС ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π½Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€Π΅Π½ΠΎ , ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΏΡ€ΠΎΠ²Π΅Ρ€Π΅Π½Π½Ρ‹ΠΉ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ Π² Ρ„Π»Π°ΠΆΠΊΠ΅ Ρ‚ΠΈΠΏΠ° Π²Π²ΠΎΠ΄Π°. Π‘ΠΌ. ΠŸΡ€ΠΈΠΌΠ΅Ρ€


    Π’Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉΡΡ список

    Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ ΠΈΠ»ΠΈ Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉΡΡ список Π²Ρ‹Π±ΠΎΡ€Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Π²Ρ‹Π±ΠΎΡ€Π° ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² Π² Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΌΡΡ спискС. Π’Ρ‹Π±ΠΎΡ€ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² ΡΠ²Π»ΡΡŽΡ‚ΡΡ фиксированными, поэтому ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΄Π°Π½Π½Ρ‹ΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ ΠΈΠ»ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹. Для Π²Ρ‹Π±ΠΎΡ€Π° Π³ΠΎΡ€ΠΎΠ΄Π°, страны, Π΄Π°Ρ‚Ρ‹, мСсяца, Π³ΠΎΠ΄Π° ΠΈ Ρ‚. Π”. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Select Dropdown .

    Π’Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅Π³ΠΎΡΡ списка

    Π’Π΅ΠΊΡƒΡ‰ΠΈΠΉ Π³ΠΎΡ€ΠΎΠ΄ проТивания: --Π’Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ Π³ΠΎΡ€ΠΎΠ΄ - Нью-Π™ΠΎΡ€ΠΊ, Π§ΠΈΠΊΠ°Π³ΠΎ, Лос-АндТСлСс, Π’Π°ΡˆΠΈΠ½Π³Ρ‚ΠΎΠ½, ΠΎΠΊΡ€ΡƒΠ³ ΠšΠΎΠ»ΡƒΠΌΠ±ΠΈΡ,
     
        <Π²Ρ‹Π±ΠΎΡ€>
            <опция Π²Ρ‹Π±Ρ€Π°Π½Π° ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½Π°> - Π’Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Π³ΠΎΡ€ΠΎΠ΄ - 
            
            
            
            
        
      

    Π’Ρ‹Π±Ρ€Π°Ρ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Optgroup

    Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Optgroup ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΎΠΏΡ†ΠΈΠΉ Π² Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΌΡΡ спискС Π²Ρ‹Π±ΠΎΡ€Π°.Имя optgroup устанавливаСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π° ΠΌΠ΅Ρ‚ΠΊΠΈ Π² optgroup.

    Π’Π΅ΠΊΡƒΡ‰ΠΈΠΉ Π³ΠΎΡ€ΠΎΠ΄ проТивания: --Π’Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ Π³ΠΎΡ€ΠΎΠ΄ - Нью-Π”Π΅Π»ΠΈΠšΠΎΠ»ΠΊΠ°Ρ‚Π°ΠœΡƒΠΌΠ±Π°ΠΈΠ§Π΅Π½Π½Π°ΠΈΠΠΎΠΈΠ΄Π°Π“ΡƒΡ€Π³Ρ€Π°ΠΌΠ€Π°Ρ€ΠΈΠ΄Π°Π±Π°Π΄Π“Π°Π·ΠΈΠ°Π±Π°Π΄

     
    <Π²Ρ‹Π±ΠΎΡ€>
        <опция Π²Ρ‹Π±Ρ€Π°Π½Π° ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½Π°> - Π’Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Π³ΠΎΡ€ΠΎΠ΄ - 
        
            
            
            
            
        
        
            
            
            
            
        
    
      

    НСсколько Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠ² Π² Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠΌ

    НСсколько Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΌΡΡ спискС Π²Ρ‹Π±ΠΎΡ€Π°, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π° с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ клавиши Ctrl ΠΈΠ»ΠΈ Cmd .

    Π’Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ нСсколько Π³ΠΎΡ€ΠΎΠ΄ΠΎΠ²: --Π’Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ Π³ΠΎΡ€ΠΎΠ΄ - Нью-Π”Π΅Π»ΠΈΠšΠΎΠ»ΠΊΠ°Ρ‚Π°ΠœΡƒΠΌΠ±Π°ΠΈΠ§Π΅Π½Π½Π°ΠΈΠΠΎΠΈΠ΄Π°Π“ΡƒΡ€Π³Ρ€Π°ΠΌΠ€Π°Ρ€ΠΈΠ΄Π°Π±Π°Π΄Π“Π°Π·ΠΈΠ°Π±Π°Π΄ НаТмитС Ctrl ΠΈΠ»ΠΈ Cmd для мноТСствСнного Π²Ρ‹Π±ΠΎΡ€Π°.

     
    <Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ нСсколько>
        <опция Π²Ρ‹Π±Ρ€Π°Π½Π° ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½Π°> - Π’Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Π³ΠΎΡ€ΠΎΠ΄ - 
        
            
            
            
            
        
        
            
            
            
            
        
    
    
      

    Π’Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ Π΄Π°Ρ‚Ρƒ роТдСния Π² Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΌΡΡ спискС

    --Π’Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ мСсяц - JANFEBMARAPRMAYJUNJULAUGSEPOCTNOVDEC - Π’Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ Π΄Π°Ρ‚Ρƒ - 12345678121314151617181

    22232425262728293031

    Textarea

    Textarea ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для записи Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… строк.НапримСр, сообщСниС, запрос, адрСс, ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ, ΠΎΡ‚Π·Ρ‹Π²Ρ‹ ΠΈ Ρ‚. Π”. Textarea ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Ρ‹ row ΠΈ col . Π‘Ρ‚Ρ€ΠΎΠΊΠΈ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ - 2, столбцы ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ - 20.

    Textarea ΠŸΡ€ΠΈΠΌΠ΅Ρ€

     
        
        
        
        
        
    
      

    Кнопка ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ

    Кнопка ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ ΠΈΠ»ΠΈ Π²Π²ΠΎΠ΄ Ρ‚ΠΈΠΏΠ° submit ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎΡ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π½Π° Π²Π΅Π±-сСрвСр.Кнопка Β«ΠžΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒΒ» ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π· Π² Ρ‚Π΅Π³Π΅ Ρ„ΠΎΡ€ΠΌΡ‹.

    ΠŸΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ

     
        
      

    Кнопка сброса

    Кнопка сброса ΠΈΠ»ΠΈ сброс Ρ‚ΠΈΠΏΠ° Π²Π²ΠΎΠ΄Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для ΠΏΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ… Ρ„ΠΎΡ€ΠΌΡ‹ Π±Π΅Π· обновлСния Π²Π΅Π±-страницы. Бброс Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π· Π² Ρ‚Π΅Π³Π΅ Ρ„ΠΎΡ€ΠΌΡ‹.

    Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΊΡƒ сброса

     
        
      

    Π’Π΅Π³ ΠΊΠ½ΠΎΠΏΠΊΠΈ

    Π’Π΅Π³ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΈΠ»ΠΈ Кнопка ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΊΠΈ, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ΠΊΠ½ΠΎΠΏΠΊΠ° Ρ‚ΠΈΠΏΠ° Π²Π²ΠΎΠ΄Π°.Π’Π΅Π³ ΠΊΠ½ΠΎΠΏΠΊΠΈ - это ΠΏΠ°Ρ€Π½Ρ‹ΠΉ элСмСнт. ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, Π·Π½Π°Ρ‡ΠΎΠΊ ΠΈΠ»ΠΈ Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΠΉ элСмСнт Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ‚Π΅Π³Π° ΠΊΠ½ΠΎΠΏΠΊΠΈ.

    Π’ΠΈΠΏ ΠΊΠ½ΠΎΠΏΠΎΠΊ

    • Кнопка, .
    • Кнопка сброса, .
    • Кнопка Β«ΠžΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒΒ», .

    ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Ρ‚Π΅Π³Π° ΠΊΠ½ΠΎΠΏΠΊΠΈ

    Кнопка 1 Кнопка 2 ΠŸΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ Π½Π° рассмотрСниС

     
        
      

    Fieldset

    Π€ΠΎΡ€ΠΌΠ° ΠΈΠ»ΠΈ элСмСнты управлСния Ρ„ΠΎΡ€ΠΌΡ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠΌΠ΅Ρ‰Π΅Π½Ρ‹ Π² Ρ‚Π΅Π³ fieldset . Π’Π΅Π³ Fieldset ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠΈ Ρ„ΠΎΡ€ΠΌ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… элСмСнтов управлСния Π²Π²ΠΎΠ΄ΠΎΠΌ. Fieldset Π³Ρ€ΡƒΠΏΠΏΠΎΠ²Ρ‹Π΅ элСмСнты управлСния Π² области с Ρ€Π°ΠΌΠΊΠΎΠΉ. ΠœΡ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Π΅Π³ Π»Π΅Π³Π΅Π½Π΄Ρ‹ Π²Π½ΡƒΡ‚Ρ€ΠΈ fieldset.

    ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Fieldset : , Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ нСсколько элСмСнтов управлСния Ρ„ΠΎΡ€ΠΌΠΎΠΉ .

    Fieldset с лСгСндой

    Π€ΠΎΡ€ΠΌΠ° запроса

     
    
    Π€ΠΎΡ€ΠΌΠ° запроса

    Fieldset с ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹ΠΌ

    Fieldset Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ disabled .ΠŸΡ€ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π° disables всС элСмСнты управлСния Ρ„ΠΎΡ€ΠΌΡ‹, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ ΠΊΠ½ΠΎΠΏΠΊΡƒ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ, ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ΡΡ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΈ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ Ρ„ΠΎΡ€ΠΌΡ‹.

    Π€ΠΎΡ€ΠΌΠ° запроса

     
    <Π½Π°Π±ΠΎΡ€ ΠΏΠΎΠ»Π΅ΠΉ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½>
         Π€ΠΎΡ€ΠΌΠ° запроса 
            

    Полная Ρ„ΠΎΡ€ΠΌΠ° HTML со всСми Π²Ρ…ΠΎΠ΄Π°ΠΌΠΈ, Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΌΡΡ списком Π²Ρ‹Π±ΠΎΡ€Π°, ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»ΡΠΌΠΈ, Ρ„Π»Π°ΠΆΠΊΠΎΠΌ, тСкстовым ΠΏΠΎΠ»Π΅ΠΌ, ΠΊΠ½ΠΎΠΏΠΊΠ°ΠΌΠΈ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ ΠΈ сброса.

     
    <Ρ„ΠΎΡ€ΠΌΠ°>
        <Ρ‚Π°Π±Π»ΠΈΡ†Π°>
            
                
                    
                
                
                    
                
            
            
                
                    
                
                
                    
                    
                
            
            
                
                    
                
                
                    
                
            
            
                
                    
                
                
                    
                
            
            
                
                        
                
                
                        
                
            
            
                
                    
                
                
                    
                
            
            
                
                    
                
                
                    <ΠΌΠ΅Ρ‚ΠΊΠ°>
                         ΠšΡ€ΠΈΠΊΠ΅Ρ‚
                    
                    <ΠΌΠ΅Ρ‚ΠΊΠ°>
                         Π€ΡƒΡ‚Π±ΠΎΠ»
                    
                
            
            
                
                    
                
                
                    <ΠΌΠ΅Ρ‚ΠΊΠ°>
                         ЖСнский 
                        <ΠΌΠ΅Ρ‚ΠΊΠ°>
                         ΠœΡƒΠΆΡΠΊΠΎΠΉ 
                
            
            
                
                        
                
                
                        
                
            
            
                
                    
                
                
                    
                
            
            
                 
                
                    
                    
                
            
        
    
      

    Π’Π½ΡƒΡ‚Ρ€ΠΈ элСмСнта Ρ„ΠΎΡ€ΠΌΡ‹ ΠΊΠ½ΠΎΠΏΠΊΠ° Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ ΠΊΠ½ΠΎΠΏΠΊΠ° ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ, Π½ΠΎ Π²Π½Π΅ Ρ„ΠΎΡ€ΠΌΡ‹ ΠΊΠ½ΠΎΠΏΠΊΠ° Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ ΠΊΠ½ΠΎΠΏΠΊΠ°.


    Π€ΠΎΡ€ΠΌΠ° Html5

    Π­Ρ‚ΠΈ элСмСнты управлСния Ρ„ΠΎΡ€ΠΌΡ‹ основаны Π½Π° HTML4 / XHTML. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·ΡƒΡ‡ΠΈΡ‚ΡŒ элСмСнты управлСния ΠΈ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Ρ‹ Ρ„ΠΎΡ€ΠΌ Π½Π° основС HTML5, Ρ‰Π΅Π»ΠΊΠ½ΠΈΡ‚Π΅ здСсь HTML5 Form


    Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΡ…ΡΡ списков Β· Bootstrap

    ΠŸΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°ΠΉΡ‚Π΅ контСкстныС налоТСния для отобраТСния списков ссылок ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ³ΠΎ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΠ»Π°Π³ΠΈΠ½Π° Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅Π³ΠΎΡΡ списка Bootstrap.

    ΠžΠ±Π·ΠΎΡ€

    Π’Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠ΅ списки - это ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌΡ‹Π΅ контСкстныС налоТСния для отобраТСния списков ссылок ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ³ΠΎ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ. Они сдСланы ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹ΠΌΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π½ΠΎΠ³ΠΎ ΠΏΠ»Π°Π³ΠΈΠ½Π° JavaScript для Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π³ΠΎ мСню Bootstrap. Они ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ΡΡ Ρ‰Π΅Π»Ρ‡ΠΊΠΎΠΌ, Π° Π½Π΅ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ курсора; это Π½Π°ΠΌΠ΅Ρ€Π΅Π½Π½ΠΎΠ΅ дизайнСрскоС Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅.

    Π’Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠ΅ списки созданы Π½Π° основС стороннСй Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Popper.js, которая обСспСчиваСт динамичСскоС ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ области просмотра. НС Π·Π°Π±ΡƒΠ΄ΡŒΡ‚Π΅ Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ popper.min.js ΠΏΠ΅Ρ€Π΅Π΄ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΎΠΉ JavaScript Π² Bootstrap ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ bootstrap.bundle.min.js / bootstrap.bundle.js , ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ содСрТит Popper.js. Popper.js Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для размСщСния Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΡ…ΡΡ списков Π½Π° панСлях Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΈ, хотя динамичСскоС ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π΅ трСбуСтся.

    Если Π²Ρ‹ создаСтС наш JavaScript ΠΈΠ· исходного ΠΊΠΎΠ΄Π°, для Π½Π΅Π³ΠΎ трСбуСтся util.js .

    Π”ΠΎΡΡ‚ΡƒΠΏΠ½ΠΎΡΡ‚ΡŒ

    Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚ WAI ARIA опрСдСляСт фактичСский Π²ΠΈΠ΄ΠΆΠ΅Ρ‚ role = "menu" , Π½ΠΎ это спСцифично для мСню, ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ прилоТСниям, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ запускаСт дСйствия ΠΈΠ»ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. ARIA МСню ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡƒΠ½ΠΊΡ‚Ρ‹ мСню, ΠΏΡƒΠ½ΠΊΡ‚Ρ‹ мСню Ρ„Π»Π°ΠΆΠΊΠΎΠ², ΠΏΡƒΠ½ΠΊΡ‚Ρ‹ мСню Ρ€Π°Π΄ΠΈΠΎΠΊΠ½ΠΎΠΏΠΎΠΊ, Π³Ρ€ΡƒΠΏΠΏΡ‹ Ρ€Π°Π΄ΠΈΠΎΠΊΠ½ΠΎΠΏΠΎΠΊ ΠΈ подмСню.

    Π‘ Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны, Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠ΅ списки

    Bootstrap Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Ρ‹ ΠΊΠ°ΠΊ ΠΎΠ±Ρ‰ΠΈΠ΅ ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌΡ‹ ΠΊ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌ ситуациям ΠΈ структурам Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠΈ. НапримСр, ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠ΅ΡΡ списки, содСрТащиС Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Π²Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈ элСмСнты управлСния Ρ„ΠΎΡ€ΠΌΠΎΠΉ, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ поля поиска ΠΈΠ»ΠΈ Ρ„ΠΎΡ€ΠΌΡ‹ Π²Ρ…ΠΎΠ΄Π°. По этой ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π΅ Bootstrap Π½Π΅ ΠΎΠΆΠΈΠ΄Π°Π΅Ρ‚ (ΠΈ Π½Π΅ добавляСт автоматичСски) Π½ΠΈ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠ² role ΠΈ aria-, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Ρ… для истинных мСню ARIA .Авторы Π΄ΠΎΠ»ΠΆΠ½Ρ‹ сами Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ эти Π±ΠΎΠ»Π΅Π΅ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Π΅ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Ρ‹.

    Однако Bootstrap Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ добавляСт Π²ΡΡ‚Ρ€ΠΎΠ΅Π½Π½ΡƒΡŽ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ для Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° стандартных взаимодСйствий с мСню ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρ‹, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Ρ‚ΡŒΡΡ ΠΏΠΎ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌ элСмСнтам .dropdown-item с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ клавиш курсора ΠΈ Π·Π°ΠΊΡ€Ρ‹Π²Π°Ρ‚ΡŒ мСню с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ клавиши ESC .

    ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹

    ΠžΠ±Π΅Ρ€Π½ΠΈΡ‚Π΅ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»ΡŒ Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅Π³ΠΎΡΡ списка (ваша ΠΊΠ½ΠΎΠΏΠΊΠ° ΠΈΠ»ΠΈ ссылка) ΠΈ Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅Π΅ΡΡ мСню Π²Π½ΡƒΡ‚Ρ€ΠΈ .dropdown ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ элСмСнта, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΠ±ΡŠΡΠ²Π»ΡΠ΅Ρ‚ position: relative; .Π’Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠ΅ списки ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ ΠΈΠ· элСмСнтов ΠΈΠ»ΠΈ

    И с элСмСнтами:

        

    Π‘Π°ΠΌΠΎΠ΅ приятноС Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ это ΠΈ с Π»ΡŽΠ±Ρ‹ΠΌ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠΌ ΠΊΠ½ΠΎΠΏΠΎΠΊ:

      
      

    Π Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠ΅ΡΡ Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠ΅ΡΡ списки ΠΊΠ½ΠΎΠΏΠΎΠΊ

    Аналогичным ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ создайтС Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠ΅ΡΡ списки с Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌΠΈ ΠΊΠ½ΠΎΠΏΠΊΠ°ΠΌΠΈ с практичСски Ρ‚Π°ΠΊΠΎΠΉ ΠΆΠ΅ Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠΎΠΉ, Ρ‡Ρ‚ΠΎ ΠΈ Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠ΅ΡΡ списки с ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ, Π½ΠΎ с Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ .dropdown-toggle-split для ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π»Π° Π²ΠΎΠΊΡ€ΡƒΠ³ Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π³ΠΎ курсора.

    ΠœΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ этот Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ класс, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΡ‚ΡŒ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ отступ ΠΏΠΎ ΠΎΠ±Π΅ стороны ΠΎΡ‚ ΠΊΠ°Ρ€Π΅Ρ‚ΠΊΠΈ Π½Π° 25% ΠΈ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ margin-left , ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ добавляСтся для ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Ρ… Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΡ…ΡΡ списков ΠΊΠ½ΠΎΠΏΠΎΠΊ. Π­Ρ‚ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ измСнСния ΡƒΠ΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ курсор Π² Ρ†Π΅Π½Ρ‚Ρ€Π΅ Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‚ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ наТатия Π±ΠΎΠ»Π΅Π΅ подходящСго Ρ€Π°Π·ΠΌΠ΅Ρ€Π° рядом с основной ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ.

    Π’Ρ‚ΠΎΡ€ΠΈΡ‡Π½Ρ‹ΠΉ ΠŸΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉΡΡ список
      
    

    ΠšΠ°Π»ΠΈΠ±Ρ€

    Π’Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠ΅ мСню ΠΊΠ½ΠΎΠΏΠΎΠΊ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ с ΠΊΠ½ΠΎΠΏΠΊΠ°ΠΌΠΈ всСх Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠ², Π²ΠΊΠ»ΡŽΡ‡Π°Ρ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΈ с Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌ Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΌΡΡ списком.

      
    
    ...
    ...
    ...
    ...

    Π’Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚

    Запуск Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΡ…ΡΡ мСню Π½Π°Π΄ элСмСнтами ΠΏΡƒΡ‚Π΅ΠΌ добавлСния .dropup ΠΊ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠΌΡƒ элСмСнту.

    Π Π°Π·Π΄Π΅Π»ΠΈΡ‚ΡŒ Π²Ρ‹ΠΏΠ°Π΄Π΅Π½ΠΈΠ΅ ΠŸΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉΡΡ список
      
    

    Π’Π°Ρ€ΠΈΠ°Π½Ρ‚ Dropright

    Π’Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π΅ мСню Ρ‚Ρ€ΠΈΠ³Π³Π΅Ρ€Π° справа ΠΎΡ‚ элСмСнтов ΠΏΡƒΡ‚Π΅ΠΌ добавлСния .dropright Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠΌΡƒ элСмСнту.

    Π Π°Π·Π΄Π΅Π»ΠΈΡ‚ΡŒ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠ΅ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠŸΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Dropdright
      
    

    Вариация ΠΊΠ°ΠΏΠ»ΠΈ

    Π’Ρ€ΠΈΠ³Π³Π΅Ρ€ Π² Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΌΡΡ мСню слСва ΠΎΡ‚ элСмСнтов ΠΏΡƒΡ‚Π΅ΠΌ добавлСния .dropleft Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠΌΡƒ элСмСнту.

      
    

    РаньшС содСрТимоС Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π³ΠΎ мСню содСрТало ссылки , Π½ΠΎ Π² вСрсии 4 это ΡƒΠΆΠ΅ Π½Π΅ Ρ‚Π°ΠΊ.Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ