Бутон изглед.

dakata__92

Super Moderator
Имам една форма в която се въвежда текст който се обработва от PHP код. Въпроса ми е как с JS да направя така, че като натисна бутон Изглед да се визуализира написаното в прозорец.
[js]
<script>
function updateAction()
{
document.getElementById('form').action = document.getElementById('base_url').value;
}
// Така ъпдейтвам action-a на формата за да се пусне за обработка към add.php
</script>


<form method='post' name='form' id='form' action='' >
<input type='hidden' name='base_url' id='base_url' value='add.php' />

<input type='text' size='100' name='title' value='' />
<textarea id='area' name='text' cols='130' rows='20'></textarea>
<input type='submit' name='submit' onClick='updateAction(this)' value='Добави'/><input type='reset' value='Изчисти'/>
<input type='submit' name='look' value='Изглед'/>
<form>
[/js]
Фактичести ето тази проверка искам ако мога да я извеждам в нов прозорец, чрез window.open(); примерно, но да е на същата страница, а не да съсдавам нова към която да пращам формата .
PHP:
<?php
if(isSet($_POST['look'])) 
{
	$title = addslashes(htmlspecialchars($_POST['title']));
	$text = addslashes(htmlspecialchars($_POST['text']));
	include ("include/BBcode.php");
	$text = BBcode("$text");
	echo "$text";
}
?>
 
Измайсторих си тази функция, но немога да добавя php coda
[js]
function doPreview()
{
var newWin = window.open("", "_blank");
text = document.getElementById('textarea').value;
newWin.document.write("<html><body>"+text+"</body></html>");
newWin.document.close();
}

<textarea id="textarea"></textarea>
<input type='submit' name='look' onclick="doPreview" value='Изглед'/>
[/js]
Пробвах така, но не се получава :

[js]
function doPreview()
{
var newWin = window.open("", "_blank");
text = document.getElementById('area').value;
newWin.document.write("<html><body><?php $text = addslashes(htmlspecialchars("+text+")); include ('include/BBcode.php'); $text = BBcode('$text'); echo '$text'; ?></body></html>");
newWin.document.close();
}
[/js]
 
http://api.jquery.com/jQuery.post/
Чат пат как се ползва може да разбереш тук http://videotutorials-bg.com/lessons.php?action=viewsub&id=39&t=580&page=1 :P
Понаучи jQuery от тоя сайт горе... много по полезен е от чистото JS и има много готови функции :P
 
За целта пак трябва да направя нова страница от това което гледах, а на мен ми е нужно да се визиолизира текста в нов прозорец auto blank, pop up каквото и да е като се филтрира с пхп информацията . Мислех си да поставя php кода в див и после при викането на текста от текстовото поле да викам и дива с пхп кода, но нещо не ми се получава :?
 
Не съм сигурен дали правилно съм разбрал какво искаш да направиш, но защо не използваш някой jQuery Pop-up модул като Fancybox например?
 
Battleman каза:
Не съм сигурен дали правилно съм разбрал какво искаш да направиш, но защо не използваш някой jQuery Pop-up модул като Fancybox например?
Много излишен код се ползва :)
 
Драснах си това, но document.write(); извежда само тектста на първия ред не текстовото поле, и като мина на нов ред не визиолизира :?

PHP:
<?php
if(isSet($_POST['preview'])) 
{
	$title = addslashes(htmlspecialchars($_POST['title']));
	$short = addslashes(htmlspecialchars($_POST['short']));
	$text = addslashes(htmlspecialchars($_POST['text']));
	include ("include/BBcode.php");
	$bbtext = BBcode("$text");
	echo"<script>
		var newWin = window.open('','preview','height=400,width=500'); 
		newWin.document.write('<html><body>$bbtext<br /></body></html>');        
		newWin.document.close();
	</script>";
}
?>
HTML:
<form action='' method='post'>
<textarea></textarea>
<input type='submit' name='preview' value='Изглед'/>
</form>
 

Back
Горе