2015-09-15 4 views
2

Я пытаюсь скрыть элементы ввода в моей форме с помощью следующего кода. Но это не работает ...Как скрыть все элементы ввода в форме?

<html lang="en"> 
    <head> 
     <title>children demo</title> 
     <script src="https://code.jquery.com/jquery-1.10.2.js"></script> 
    </head> 
    <body> 
     <h1>Hello</h1> 
     <div> 
     <h1 class="selected">div-1</h1> 
     <h1 class="selected">div-2</h1> 
     </div> 
     <h1>xyz</h1> 
     <form name= "demo form"> 
     First name:<input type="text" name="fname"><br> 
     Last name: <input type="text" name="lname"><br> 
     <input type="submit" value="submit"> 
     <script> 
     $("div").children(".selected").css("background-color", "yellow"); 
     document.body.style.backgroundColor = "red"; 
     $(demo_form.elements).hide(); 
     </script> 
    </body> 
</html> 
+0

$ ('вход') скрыть(); – guradio

+0

вы пропустили '' '' в селекторе jquery –

ответ

1

Ваш селектор $(demo_form.elements).hide(); неверен.

Чтобы выбрать все input элементы внутри form, вы можете использовать $('input') селектор

$('form input').hide(); 

Если вы хотите, чтобы скрыть сам form,

$('form').hide(); 
0

Если вы хотите, чтобы выбрать форму, имя, вы должны использовать что-то вроде

$('form[name=demo form]') 

Я бы порекомендовал вам использовать id формуляр, который хотите скрыть.

<form id="demo-form" name="demo form"> 
    First name:<input type="text" name="fname"><br> 
    Last name: <input type="text" name="lname"><br> 
    <input type="submit" value="submit"> 
</form> 

$(document).ready(function() { 
    $('#demo_form input').hide(); 
}); 

Примечания:

  1. Проверить синтаксис
  2. Не забудьте закрыть форму элемент
0

$('input[type="text"]').hide();
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<html lang="en"> 
 
    <head> 
 
     <title>children demo</title> 
 
    </head> 
 
    <body> 
 
    <h1>Hello</h1> 
 
    
 
    <h1>xyz</h1> 
 

 
    <form name= "demo form"> 
 
    First name:<input type="text" name="fname"><br> 
 
    Last name: <input type="text" name="lname"><br> 
 
    <input type="submit" value="submit"> 
 

 
    </body> 
 
    </html>

вы используете demo_form но нет класса demo_form, что не следует использовать как

$('input[type="text"]').hide(); 

вы можете увидеть пример здесь

+0

'demo name' - это' имя' 'form' not _class_ – Tushar

2

В основном это должно быть сделано с помощью CSS:

form.hide-inputs input{ 
    display: none; 
} 

и в jquery/JavaScript добавьте класс hide-inputs:

$('form').addClass('hide-inputs'); 
0

Если вы хотите, чтобы скрыть все элементы в виде/элемента с идентификатором «FormID» используйте следующее: (изменить имя тега, соответственно, чтобы заставить его работать, где бы вы хотите)

Лучше иметь CSS:

form#formId input{ 
    display: none; 
} 

использование Jquery:

$("form#formId input").hide(); 

Если вы хотите, чтобы скрыть определенный тип ввода сказать, например, "текст" использование следующего:

.

с помощью CSS:

form#formId input[type='input']{ 
     display: none; 
    } 

Использование JQuery:

$("form#formId input[type='text']").hide(); 
Смежные вопросы