JQuery / JavaScript сообщение в новом окне при нажатии кнопки предварительного просмотра - PullRequest
2 голосов
/ 13 ноября 2010

Я хочу получить форму с двумя кнопками, отправить и просмотреть, кнопка предварительного просмотра должна открыть новое окно с текстом из областей ввода, как мне это сделать?

<form method='post'>
//input
<input type='text' name='headline' id='headline' />
<textarea name='content' id='content'></textarea>
//buttons
<input type='submit' id='btnsubmit' value='submit' />
<input type='submit' id='btnpreview' value='preview' />
</form>

У меня не может быть target'_blank 'в форме, потому что у меня две кнопки, и только одна должна открываться в новом окне, я бы хотел, чтобы это было сделано в jquery. может кто-нибудь помочь.

Ответы [ 2 ]

2 голосов
/ 13 ноября 2010

Если вы хотите опубликовать форму в новом окне, вам нужно , чтобы установить цель формы. Вы можете установить цель для каждой кнопки:

$(function(){
  $('#btnsubmit').click(function(){
    this.form.target = '';
  });
  $('#btnpreview').click(function(){
    this.form.target = '_blank';
  });
});
0 голосов
/ 13 ноября 2010

Вы можете одним щелчком изменить цель формы:

<input type='submit' onclick="this.form.removeAttribute('target')" id='btnsubmit' value='submit' />
<input type='submit' onclick="this.form.setAttribute('target','_blank')" id='btnpreview' value='preview' />

Но: проблема, я думаю, Марсель любит указывать на это: Как только вы нажали на кнопку предварительного просмотра, цель устанавливается на _blank. Если вы сейчас сделаете [enter] для <input>, цель не будет сброшена до цели по умолчанию, она останется пустой, что не является желаемым поведением.

Вы можете исправить это, например, так:

<form onsubmit="document.getElementById('btnsubmit').click();return false;">
//input
 <input type='text' name='headline' id='headline' />
 <textarea name='content' id='content'></textarea>
//buttons
 <input type='submit' onclick="this.form.removeAttribute('target');this.form.submit();return false;" id='btnsubmit' value='submit' />
 <input type='submit' onclick="this.form.setAttribute('target','_blank');this.form.submit();return false;" id='btnpreview' value='preview' />
</form>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...