Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Подскажите как отобразить текст. (https://javascript.ru/forum/misc/1616-podskazhite-kak-otobrazit-tekst.html)

potkin 24.08.2008 16:19

Подскажите как отобразить текст.
 
Я задавал вопрос в єтом форуме как "спрятать текст". Мне ответили:

текст_1<span id="must_delete">текст_2</span>
<button onclick="window.getElementById('must_delete').innerHTML=''">delete</button>


А вот как єтот текст обратно отобразить ??? Есть ли такая возможность ???

Заранее спасибо !!!

Андрей Параничев 24.08.2008 16:57

текст_1<span id="must_toggle">текст_2</span>
<button onclick="document.getElementById('must_toggle').style.display='none'">delete</button>
<button onclick="document.getElementById('must_toggle').style.display='inline'">show</button>

potkin 24.08.2008 19:01

Большое Вам спасибо !!!

garmoni 24.10.2017 16:35

Можно и мне подсказать? У меня немного по другому написано в alert
alert(data['error']);
как это прописать в document.getElementById ?

Nexus 24.10.2017 16:38

garmoni,
var el=document.getElementById('ID-ЭЛЕМЕНТА');
el.innerHTML=data.error;
el.style.display='block';

garmoni 24.10.2017 16:41

Цитата:

Сообщение от Nexus (Сообщение 468100)
garmoni,
var el=document.getElementById('ID-ЭЛЕМЕНТА');
el.innerHTML=data.error;
el.style.display='block';

Не успела исправить и уже ответили. Хотела в этой теме написать, по этому не описывала полностью вопрос
https://javascript.ru/forum/misc/222...lnoe-okno.html
По вопросу как изменить скрипт, вывести текст на странице а не через модальное окно подойдет?

Nexus 24.10.2017 16:45

garmoni, я вас не понимаю.

garmoni 24.10.2017 16:51

Цитата:

Сообщение от Nexus (Сообщение 468102)
garmoni, я вас не понимаю.

Мне нужно вывести сообщение об ошибке не как модальное окно, а как текст сообщения в форме.
Здесь нашла ответ https://javascript.ru/forum/misc/222...lnoe-okno.html

около формы (или где там хотите) создаете div с любым id (можно <div id="error"></div>), и в место alert(error_msg); пишите document.getElementById('error').innerHTML = error_msg;.

Возник вопрос. Если у меня не alert(error_msg); , а alert(data['error']);
как это записать в js?
Извините, что не в той теме написала, когда залогинилась, почему то на другую тему бросило

Nexus 24.10.2017 16:57

garmoni,
document.getElementById('error').innerHTML=data.error;

garmoni 24.10.2017 17:25

Цитата:

Сообщение от Nexus (Сообщение 468107)
garmoni,
document.getElementById('error').innerHTML=data.error;

Почему то все равно как модальное окно выводит (

<form method="post" action="" id="ajaxform"> 
            <div id="error"></div>
            <div class="row">
            <label for="name">Ваше имя:</label>
            <input  name="name" type="text" id="user_name" value="" placeholder="Вaшe имя" class="colortext txt" />
            </div>
            <div class="row"> 
            <label for="email">Ваш e-mail:</label>
            <input name="email" type="text" id="user_email" placeholder="Вaш email" value="" class="colortext txt"/>
            </div>
            <!-- <div class="row"> 
            <label for="subject">Тема:</label>
            <input name="subject" type="text" id="subject" value="" class="colortext txt"/>
            </div> -->
            <div class="row">
            <label for="message">Сообщение:</label>
            <textarea id="text_comment" class="txtarea" placeholder="Сooбщeниe.." name="message"></textarea>
            </div>
            
            <div class="center">
            <input type="submit" name="submit" value="Отправить сообщение" id="btn_submit" class="button-form" /> 
            </div>
            </form>


$(document).ready(function() { // вся мaгия пoслe зaгрузки стрaницы
  $("#ajaxform").submit(function(){ // пeрeхвaтывaeм всe при сoбытии oтпрaвки
    var form = $(this); // зaпишeм фoрму, чтoбы пoтoм нe былo прoблeм с this
    var error = false; // прeдвaритeльнo oшибoк нeт
    form.find('input, textarea').each( function(){ // прoбeжим пo кaждoму пoлю в фoрмe
      if ($(this).val() == '') { // eсли нaхoдим пустoe
        alert('Зaпoлнитe пoлe "'+$(this).attr('placeholder')+'"!'); // гoвoрим зaпoлняй!
        error = true; // oшибкa
      }
    });
    if (!error) { // eсли oшибки нeт
      var data = form.serialize(); // пoдгoтaвливaeм дaнныe
      $.ajax({ // инициaлизируeм ajax зaпрoс
         type: 'POST', // oтпрaвляeм в POST фoрмaтe, мoжнo GET
         url: 'mail.php', // путь дo oбрaбoтчикa, у нaс oн лeжит в тoй жe пaпкe
         dataType: 'json', // oтвeт ждeм в json фoрмaтe
         data: data, // дaнныe для oтпрaвки
           beforeSend: function(data) { // сoбытиe дo oтпрaвки
                form.find('input[type="submit"]').attr('disabled', 'disabled'); // нaпримeр, oтключим кнoпку, чтoбы нe жaли пo 100 рaз
              },
           success: function(data){ // сoбытиe пoслe удaчнoгo oбрaщeния к сeрвeру и пoлучeния oтвeтa
              if (data['error']) { // eсли oбрaбoтчик вeрнул oшибку
                document.getElementById('error').innerHTML=data.error;

                // alert(data['error']); // пoкaжeм eё тeкст
              } else { // eсли всe прoшлo oк
                alert('Письмo oтврaвлeнo! Ждите ответ! =)'); // пишeм чтo всe oк
              }
             },
           error: function (xhr, ajaxOptions, thrownError) { // в случae нeудaчнoгo зaвeршeния зaпрoсa к сeрвeру
                alert(xhr.status); // пoкaжeм oтвeт сeрвeрa
                alert(thrownError); // и тeкст oшибки
             },
           complete: function(data) { // сoбытиe пoслe любoгo исхoдa
                form.find('input[type="submit"]').prop('disabled', false); // в любoм случae включим кнoпку oбрaтнo
             }
                      
           });
    }
    return false; // вырубaeм стaндaртную oтпрaвку фoрмы
  });
});


Часовой пояс GMT +3, время: 13:33.