Window.location() не работает, а не открывает страницу
У меня есть кнопка отправки с onClick:
<div id="messageDiv">
<form>
<textarea name="message" rows="10" cols="20"></textarea></textarea>
<br /><br />
<input type="submit" value="Send" onClick="sendmail()">
<input type="reset" value="Reset" name='reset'>
</form>
</div>
то у меня есть sendmail:
function sendmail()
{
window.location.href = "http://www.rainbowcode.net/index.php/profiles/mail?="+mailid;
window.location('http://www.rainbowcode.net/index.php/profiles/mail?='+mailid);
//return true;
}
mailid
- глобальная переменная, которая устанавливается в другой JS-функции и содержит правильное значение. Почему window.location
не открывает мою страницу?
Если я вручную открою его с помощью mailid, он отлично работает.
Ответы
Ответ 1
Настройка местоположения работает нормально, но затем отправляется форма, которая вместо этого перезагружает текущую страницу.
Возвращает false из метода:
function sendmail() {
window.location.href = "http://www.rainbowcode.net/index.php/profiles/mail?="+mailid;
return false;
}
и вернуть этот статус в случае остановки отправки:
<input type="submit" value="Send" onclick="return sendmail()">
Ответ 2
Если вам нужно открыть новое окно, вы должны использовать метод window.open(). window.location относится к текущему адресу Windows и будет только - при использовании window.location.reload()
- перезагрузить окно CURRENT.
Ответ 3
Уже твердые ответы, но зачем бороться с системой? В частности, если вы вызвали с jquery или onClick
- может быть, нет встроенного возврата, это моя точка, поэтому вместо этого вы можете просто изменить действие на submit
:
document.form.action = 'http://www.rainbowcode.net/index.php'
тогда вы можете выбрать любую из переменных формы, если они вам понадобятся, или игнорировать, если нет.