Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   функция + document write + <script type="text/javascript">функция</script> не работае (https://javascript.ru/forum/events/18598-funkciya-document-write-script-type%3D-text-javascript-funkciya-script-ne-rabotae.html)

rafonets 08.07.2011 00:37

Вот форма:
<form id="uptime" name="uptime">
<input type="hidden" name="uptimer" value=<?php echo date(H.":".i); ?> />
<select size="1" style="height: 30px;" name="al">
<option value="yes">ес</option>
<option value="no">ноу</option>
</select>
<input type="submit" value="ОТПравитьЬ" onClick="getForm();" />
</form>


Вот скрипт обработчик:
<script type="text/javascript">
<!--
function getForm(){
uptimer = document.forms["uptime"].elements["uptimer"].value;
al = document.forms["uptime"].elements["al"].value;
<!--- Собственно ниже не работает :(
function getMusic() {
document.write("hello<video autoplay=\"autoplay\" controls=\"controls\" width=\"400\" height=\"300\"><source src=\"./vd/1.flv\"></video>");
------------------>
}
}
-->
</script>

Теперь объясню подробнее когда функция getForm() срабатывает она должна вслед за собой включить как бы функцию getMusic() но в getMusic() есть условие если var al == "yes"; тогда включить музыку я мог бы сделать все на php но надо же начинать учить JS и без перезагрузки страницы будет намного лучше так как это скрипт каждодневного использования
надеюсь все ясно буду благодарен за помощь

rafonets 08.07.2011 00:42

trikadin,
1) Думаю простой вывод даты есть и на JS так что все было понятно
2) Скрипт не работает мне нужно было чтобы getMusic(); начинал работать если форма отправлена а так он сразу работает

trikadin 08.07.2011 00:43

Попробуйте то, что я написал в своём предыдущем посте. Вообще, я с удовольствием напишу для вас обе ф-ции. За определённую сумму...

У вас знания почти на нуле. И объяснять мне вам каждый свой шаг - не очень-то продуктивно и прибыльно для меня. Поэтому - можете читать то, что расположено на этом сайте, и понимать всё самому, а можете платить кому-нибудь, и вам всё напишут, а если попросите - возможно, даже подробно расскомментируют.

trikadin 08.07.2011 00:45

Цитата:

Сообщение от rafonets
а так он сразу работает

Цитата:

<body>
<script type="text/javascript">getMusic();</script>
У вас он запускается сразу же. Уберите строчку:
<script type="text/javascript">getMusic();</script>

и есть шанс, что он будет запускаться только тогда, когда вы отправите форму.

rafonets 08.07.2011 00:47

trikadin, уважаемый
к вашему сведению есть два типа форумов на одном продают свои знания на другом помогают людям мне впервые понадобился js да еще и мелочь стыдно даже я сам программист только до JS руки не доходили так как php более важный язык.
по-моему я писал, что JS не знаю и это не факт!

trikadin 08.07.2011 00:58

<html>
<head>
<title></title>
<script type="text/javascript">
function getMusic()
{
var new_div= document.createElement("div");
 
new_div.innerHTML= "hello<video autoplay=\"autoplay\" controls=\"controls\" width=\"400\" height=\"300\"><source src=\".vd/1.flv\"></video>";
 
document.body.appendChild(new_div);
};

function getForm(form) // 
{
var al = form.al.value;
if (al=="yes") 
 getMusic();
return false;
};
</script>
</head>
<body>
 
<script type="text/javascript">getMusic();</script>
 
<form id="uptime" name="uptime" onsubmit="return getForm(this);">
<!-- если выкладываете код, то вы должны (должны, блин!) выкладывать полученный после выполнения php код. Безо всяких echo и т. д., потому что никто не знает, что у вас там на сервере делается -->
<input type="hidden" name="uptimer" value=<?php echo date(H.":".i); ?> />
 
<select size="1" style="height: 30px;" name="al">
<option value="yes">ес</option>
<option value="no">ноу</option>
</select>
<input type="submit" value="Отправить" />
</form>
</body>
</html>


Работает?

rafonets 08.07.2011 01:06

Нет опять то же самое текст и плеер сразу видны.
Вот я чего добился правда плеер видно всего пол секунды если бы можно было дотянуть до 10-15 секунд хотя бы :(
<html>
<head>
<title></title>
<script type="text/javascript">
<!--
function getForm(){
uptimer = document.forms["uptime"].elements["uptimer"].value;
al = document.forms["uptime"].elements["al"].value;
document.getElementById('funcgetmusic').style.display='block';

}
function getMusic() {
document.write("hello<video autoplay=\"autoplay\" controls=\"controls\" width=\"400\" height=\"300\"><source src=\"./vd/1.flv\"></video>");
}
-->
</script>
</head>
<body>
<div style="display: none;" id="funcgetmusic">
<script type="text/javascript">getMusic();</script>
</div>
<form id="uptime" name="uptime">
<input type="hidden" name="uptimer" value="03:04" />
<select size="1" style="height: 30px;" name="al">
<option value="yes">ес</option>
<option value="no">ноу</option>
</select>
<input type="submit" value="ОТПравитьЬ" onClick="getForm();" />
</form>
</body>
</html>

trikadin 08.07.2011 01:08

<html>
<head>
<title></title>
<script type="text/javascript">
function getMusic()
{
var new_div= document.createElement("div");
 
new_div.innerHTML= "hello<video autoplay=\"autoplay\" controls=\"controls\" width=\"400\" height=\"300\"><source src=\".vd/1.flv\"></video>";
 
document.body.appendChild(new_div);
};

function getForm(form) // 
{
var al = form.al.value;
if (al=="yes") 
 getMusic();
return false;
};
</script>
</head>
<body>
 
<form id="uptime" name="uptime" onsubmit="return getForm(this);">
<!-- если выкладываете код, то вы должны (должны, блин!) выкладывать полученный после выполнения php код. Безо всяких echo и т. д., потому что никто не знает, что у вас там на сервере делается -->
<input type="hidden" name="uptimer" value=<?php echo date(H.":".i); ?> />
 
<select size="1" style="height: 30px;" name="al">
<option value="yes">ес</option>
<option value="no">ноу</option>
</select>
<input type="submit" value="Отправить" />
</form>
</body>
</html>


Вот так будет работать.

rafonets 08.07.2011 01:10

не работает думаете я не догадался тег <script> в body убрать?

trikadin 08.07.2011 01:13

Ясно. Ну тогда я бессилен. :no:

Может, вам кто-то ещё поможет.


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