Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   function open_win1(){myWin = window.open... (https://javascript.ru/forum/misc/39890-function-open_win1-%7Bmywin-%3D-window-open.html)

Kaleos 16.07.2013 09:14

function open_win1(){myWin = window.open...
 
Не работает файл JavaScript.js в internet explorer. Каждая функция вызывается при нажатии на кнопку на странице index.php. Проверял в google chrome и opera - все работает. В редакторе php в режиме "Preview" при нажатии на кнопку пишет:
Значением свойства "open_win1" или являеся NULL, или оно не определено, или не является объектом Function. Либо пишет недопустимый аргумент ссылаясь на файл JavaScript.js. Подскажите в чем причина, в разных браузерах?

Код файла JS:

function open_win1(){myWin = window.open("http://localhost/Main/Names/7_6.html","Names","toolbar=no, location=no, directories=no, status=no, menubar=no, 
scrollbars=yes, resizable=yes, width=1300, height=650");}
function open_win2(){myWin = window.open("http://localhost/Main/Names/5_8.html","Names",
"toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=yes, resizable=yes, width=1300, height=650");}
function open_win3(){myWin = window.
open("http://localhost/Main/Charts/1598_1605.html","Names","toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=yes, 
resizable=yes, width=1300, height=650");}

skrudjmakdak 16.07.2013 09:18

а где var перед myWin? или она определена за пределами функции?

ОлегА 16.07.2013 09:32

кошмар как вы пишите код, все сливается.

function open_win1(){
    myWin = window.open("http://localhost/Main/Charts/7_6.html" ,"Names"
          ,"toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=yes, resizable=yes, width=1300, height=650"
    );
}

function open_win2(){
      myWin = window.open("http://localhost/Main/Charts/5_8.html","Names"
           ,"toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=yes, resizable=yes, width=1300, height=650"
      );
}

function open_win3(){
      myWin = window.open("http://localhost/Main/Charts/1598_1605.html","Names"
           ,"toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=yes, resizable=yes, width=1300, height=650"
      );
}


покажите остальной код, где и как вызываете? Отдельно попробовал эти функции у себя на IE все работает.

Kaleos 16.07.2013 09:35

Цитата:

Сообщение от skrudjmakdak (Сообщение 262511)
а где var перед myWin? или она определена за пределами функции?

Добавил var:

function open_win1(){var myWin = window.open("http://localhost/Main/Charts/7_6.html","Score chart","toolbar=no, location=no, directories=no, status=no, 
menubar=no, scrollbars=yes, resizable=yes, width=1300, height=650");}
function open_win2(){var myWin = window.open("http://localhost/Main/Charts/5_8.html",
"Score chart","toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=yes, resizable=yes, width=1300, height=650");}


В explorer при нажатии на кнопку ничего не происходит. В chrome, opera - работает. Теперь php редактор пишет: недопустимый аргумент ссылаясь на файл JavaScript.js

Kaleos 16.07.2013 09:43

Цитата:

Сообщение от ОлегА (Сообщение 262516)
кошмар как вы пишите код, все сливается.

function open_win1(){
    myWin = window.open("http://localhost/Main/Charts/7_6.html" ,"Names"
          ,"toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=yes, resizable=yes, width=1300, height=650"
    );
}

function open_win2(){
      myWin = window.open("http://localhost/Main/Charts/5_8.html","Names"
           ,"toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=yes, resizable=yes, width=1300, height=650"
      );
}

function open_win3(){
      myWin = window.open("http://localhost/Main/Charts/1598_1605.html","Names"
           ,"toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=yes, resizable=yes, width=1300, height=650"
      );
}


покажите остальной код, где и как вызываете? Отдельно попробовал эти функции у себя на IE все работает.

Я его не пишу он формируется php скриптом:

В файле JavaScript.js больше ничего нет кроме этих функций. Его я подключаю в index.php
......
echo '<script type="text/javascript" src="JavaScript.js"></script>'
......
echo '<input  type="button" style="float: center; height:22px; width: 50px" button value="Names" onclick="open_win'.$i.'()">'

skrudjmakdak 16.07.2013 09:43

в самой функции ошибок вроде нет.. возможно они за пределами.. покажите всю html страницу

Kaleos 16.07.2013 10:05

Цитата:

Сообщение от skrudjmakdak (Сообщение 262520)
в самой функции ошибок вроде нет.. возможно они за пределами.. покажите всю html страницу

Извиняюсь что так пишу HTML меня на форумах критикуют. Не умею я вставлять php код в html. А если вставляю что-то всегда не работает.

HTML(PHP) страница:

<?php
	ini_set('display_errors', true);
	error_reporting(-1);
	echo '<!doctype html>';
	echo '<html>';
	echo '<head>';
	echo '<title>Names</title>';
	echo '<script type="text/javascript" src="JavaScript.js"></script>';
	echo '<style>.table {border-collapse: collapse; border: 1px solid #00280e}</style>';
	echo '<style>td.date {font-size: 11pt; text-align:center}</style>';
	echo '<style>td.names {font-size: 12pt; text-align:center}</style>';
	echo '</head>';
	echo '<body>';
		echo '<table align = "center" bordercolor = "black" border="1" class = "table" width = "1000">';
			echo '<tr>';
			
				echo '<td colspan = "3">';
					echo '1';
				echo '</td>';
			echo '</tr>';
				
			echo '<tr>';
				echo '<td width = "230">';
					echo'2';
				echo '</td>';
				echo '<td>';
				$fr = fopen("C:\Users\Public\Apache\htdocs\Main\Names.csv", "r");
				$i = 1;
				$leg = '';
				while (!feof($fr))
					{
						$arrM = explode(";",fgets($fr));
						if ($arrM[1] <> $leg)
							{	
								echo '<table width = "540"  class = "table" bordercolor = "black" border="1">';
									echo '<tr>';
											echo '<td style="background: #ac2617; color: #fff;"><font face=\'Times New Roman\'>'.$arrM[0].': '.$arrM[1].'</font></td>';
									echo '</tr>';
								echo '<table>';
							}
						echo '<table width = "540" class = "table" bordercolor = "black" border="1">';
							echo '<tr>';
								echo '<td class = "date" width = "70">';
									echo $arrM[2].' '.$arrM[3];
								echo '</td>';
								echo '<td class = "names" width = "400">';
									echo '<font face="Calibri">'.$arrM[5].' - '.$arrM[7].'</font>';
								echo '</td>';
								echo '<td width = "50" align = "center">';
									echo '<input  type="button" style="float: center; height:22px; width: 50px"  button value="Names" onclick="open_win'.$i.'()">';
								echo '</td>';
							echo '</tr>';
						echo '</table>';
						$leg = $arrM[1];
						$i++;;
					}
				fclose($fr);	
				echo '</td>';
				echo '<td width = "230">';
					echo'3';
				echo '</td>';
			echo '</tr>';
		echo '</table>';
	echo '</body>';
	echo '</html>';	
?>

skrudjmakdak 16.07.2013 10:25

таки нафиг мне пхп?? мне html-ка нужна ваша, ибо разбераться здесь можно до следующего утра...

зайдите в браузер откройте вашу страницу и нажмите ctrl + U.
мне вот это надо

Kaleos 16.07.2013 10:35

Цитата:

Сообщение от skrudjmakdak (Сообщение 262524)
таки нафиг мне пхп?? мне html-ка нужна ваша, ибо разбераться здесь можно до следующего утра...

зайдите в браузер откройте вашу страницу и нажмите ctrl + U.
мне вот это надо

HTML:

<!doctype html><html><head><title>Names</title><script type="text/javascript" src="JavaWindows.js"></script><style>.table {border-collapse: collapse; 
border: 1px solid #00280e}</style><style>td.date {font-size: 11pt; text-align:center}</style><style>td.teams {font-size: 12pt; 
text-align:center}</style></head><body><table align = "center" bordercolor = "black" border="1" class = "table" width = "1000"><tr><td colspan = 
"3">1</td></tr><tr><td width = "230">2</td><td><table width = "540"  class = "table" bordercolor = "black" border="1"><tr><td style="background: #ac2617; color: 
#fff;"><font face='Times New Roman'>AUSTRALIA: NBL</font></td></tr><table><table width = "540" class = "table" bordercolor = "black" border="1"><tr><td class = 
"date" width = "70">11.04 13:00</td><td class = "teams" width = "400"><font face="Calibri">Sydney - Perth
</font></td><td width = "50" align = "center"><input  type="button" style="float: center; height:22px; width: 50px"  button value="name" 
onclick="open_win1()"></td></tr></table><table width = "540" class = "table" bordercolor = "black" border="1"><tr><td class = "date" width = "70">11.04 
15:00</td><td class = "teams" width = "400"><font face="Calibri">New Zealand Breakers - Townsville
</font></td><td width = "50" align = "center"><input  type="button" style="float: center; height:22px; width: 50px"  button value="name" 
onclick="open_win2()"></td></tr></table><table width = "540"  class = "table" bordercolor = "black" border="1"><tr><td style="background: #ac2617; color: 
#fff;"><font face='Times New Roman'>USA: WNBA</font></td></tr><table><table width = "540" class = "table" bordercolor = "black" border="1"><tr><td class = "date" 
width = "70">11.04 16:00</td><td class = "teams" width = "400"><font face="Calibri">Atlanta Dream (W) - San Antonio Silver Stars (W)
</font></td><td width = "50" align = "center"><input  type="button" style="float: center; height:22px; width: 50px"  button value="name" 
onclick="open_win3()"></td></tr></table><table width = "540" class = "table" bordercolor = "black" border="1"><tr><td class = "date" width = "70">11.04 
17:00</td><td class = "teams" width = "400"><font face="Calibri">Connecticut Sun (W) - Chicago Sky (W)
</font></td><td width = "50" align = "center"><input  type="button" style="float: center; height:22px; width: 50px"  button value="name" 
onclick="open_win4()"></td></tr></table><table width = "540" class = "table" bordercolor = "black" border="1"><tr><td class = "date" width = "70">11.04 
16:30</td><td class = "teams" width = "400"><font face="Calibri">New York Liberty (W) - Tulsa Shock (W)
</font></td><td width = "50" align = "center"><input  type="button" style="float: center; height:22px; width: 50px"  button value="name" 
onclick="open_win5()"></td></tr></table><table width = "540" class = "table" bordercolor = "black" border="1"><tr><td class = "date" width = "70">11.04 
18:00</td><td class = "teams" width = "400"><font face="Calibri">Indiana Fever (W) - Connecticut Sun (W)
</font></td><td width = "50" align = "center"><input  type="button" style="float: center; height:22px; width: 50px"  button value="name" 
onclick="open_win6()"></td></tr></table><table width = "540"  class = "table" bordercolor = "black" border="1"><tr><td style="background: #ac2617; color: 
#fff;"><font face='Times New Roman'>AUSTRALIA: WNBL</font></td></tr><table><table width = "540" class = "table" bordercolor = "black" border="1"><tr><td class = 
"date" width = "70">11.04 18:45</td><td class = "teams" width = "400"><font face="Calibri">Townsville (W) - West Coast (W)
</font></td><td width = "50" align = "center"><input  type="button" style="float: center; height:22px; width: 50px"  button value="name" 
onclick="open_win7()"></td></tr></table><table width = "540" class = "table" bordercolor = "black" border="1"><tr><td class = "date" width = "70">11.04 
19:00</td><td class = "teams" width = "400"><font face="Calibri">Bendigo (W) - Canberra (W)</font></td><td width = "50" align = "center"><input  type="button" 
style="float: center; height:22px; width: 50px"  button value="name" onclick="open_win8()"></td></tr></table></td><td width = 
"230">3</td></tr></table></body></html>

skrudjmakdak 16.07.2013 10:38

вот. если внимательно посмотреть то в коде нет вашей функции open_win1, open_win2, open_win3 ...
поэтому ошибка..

а что хранится в файле JavaWindows.js ??

Kaleos 16.07.2013 10:43

Цитата:

Сообщение от skrudjmakdak (Сообщение 262526)
вот. если внимательно посмотреть то в коде нет вашей функции open_win1, open_win2, open_win3 ...
поэтому ошибка..

а что хранится в файле JavaWindows.js ??

Как нету, а как же onclick="open_win1(), onclick="open_win2(),

Файл JavaWindows.js это то же JavaScript.js который я писал выше.

skrudjmakdak 16.07.2013 10:46

пришлите содержимое JavaWindows.js

Kaleos 16.07.2013 10:47

Цитата:

Сообщение от skrudjmakdak (Сообщение 262526)
вот. если внимательно посмотреть то в коде нет вашей функции open_win1, open_win2, open_win3 ...
поэтому ошибка..

а что хранится в файле JavaWindows.js ??

Как же нет, а это onclick="open_win1, onclick="open_win2.....

Файл JavaWindows.js это тот же JavaScript.js который я писал выше.
Я его переименовал.

JavaWindows.js:
function open_win1(){
var myWin = window.open("http://localhost/Main/names/7_6.html","Names","toolbar=no, location=no, directories=no, status=no, 
menubar=no, scrollbars=yes, resizable=yes, width=1300, height=650");}
function open_win2(){var myWin = window.open("http://localhost/Main/names/5_8.html",
"Names","toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=yes, resizable=yes, width=1300, height=650");}
function open_win3(){var myWin = window.open("http://localhost/Main/names/1598_1605.html","Names","toolbar=no, location=no, directories=no, status=no, menubar=no, 
scrollbars=yes, resizable=yes, width=1300, height=650");}
function open_win4(){var myWin = window.open("http://localhost/Main/names/1601_1609.html","Score 
chart","toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=yes, resizable=yes, width=1300, height=650");}
function open_win5(){var myWin 
= window.open("http://localhost/Main/names/1604_1607.html","Names","toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=yes, 
resizable=yes, width=1300, height=650");}
function open_win6(){var myWin = window.open("http://localhost/Main/names/1600_1601.html","Names","toolbar=no, 
location=no, directories=no, status=no, menubar=no, scrollbars=yes, resizable=yes, width=1300, height=650");}
function open_win7(){var myWin = window.open(
"http://localhost/Main/names/783_778.html","Names","toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=yes, resizable=yes, 
width=1300, height=650");}
function open_win8(){var myWin = window.open("http://localhost/Main/names/776_780.html","Names","toolbar=no, location=no, 
directories=no, status=no, menubar=no, scrollbars=yes, resizable=yes, width=1300, height=650");}

skrudjmakdak 16.07.2013 10:48

все равно.. пришлите содержимое, я гляну.. вам же надо найти ошибку..

skrudjmakdak 16.07.2013 10:50

может как раз вы переименовали и браузер не находит ваш файл??

Kaleos 16.07.2013 10:55

Цитата:

Сообщение от skrudjmakdak (Сообщение 262531)
может как раз вы переименовали и браузер не находит ваш файл??

Chrome и Opera находят.
Как разберусь напишу.

skrudjmakdak 16.07.2013 11:00

Цитата:

Сообщение от Kaleos (Сообщение 262533)
Chrome и Opera находят.
Как разберусь напишу.

хм.. они могли закэшировать.. отчистите кэш

skrudjmakdak 16.07.2013 11:09

я по моему нашел ошибку..

у вас разрывы идут например здесь:
...
"Names","toolbar=no, location=no, directories=no, status=no, <<<разрыв>>>
menubar=no, scrollbars=yes, resizable=yes,
...

его не должно быть!

и там далее тоже есть разрывы

Kaleos 16.07.2013 11:09

Цитата:

Сообщение от skrudjmakdak (Сообщение 262534)
хм.. они могли закэшировать.. отчистите кэш

Простите а как это сделать?

Kaleos 16.07.2013 11:13

Цитата:

Сообщение от skrudjmakdak (Сообщение 262535)
я по моему нашел ошибку..

у вас разрывы идут например здесь:
...
"Names","toolbar=no, location=no, directories=no, status=no, <<<разрыв>>>
menubar=no, scrollbars=yes, resizable=yes,
...

его не должно быть!

и там далее тоже есть разрывы

Это файл JavaWindows.js формируется одной строкой php файлом.

skrudjmakdak 16.07.2013 11:14

у меня хром.. в нем делается так:

настройки->Показать дополнительные настройки->отчистить историю->отчистить
есть еще горячие клавиши, чтобы каждый раз не лазить, но я к сожалению не помню..

можно через фаербаг удалять, я так делаю

skrudjmakdak 16.07.2013 11:16

Цитата:

Сообщение от Kaleos (Сообщение 262537)
Тогда получается мне надо html переписывать и вставлять скрипт php там где надо.

зачем переписывать, просто в пхп удалите переносы строк.
скиньте сюда, как вы генерируйте свой js код (хотя честно, его лучше переписать)

skrudjmakdak 16.07.2013 11:16

сейчас, я вас сам накидаю.. 5 мин

skrudjmakdak 16.07.2013 11:23

в js функцию можно и даже лучше описать 1 раз:
ваш файл javascript.js:
function open_win(str)
	{
	var myWin = window.open("http://localhost/Main/names/" + str + ".html","Names","toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=yes, resizable=yes, width=1300, height=650");
	}


а вот кусок php вашего кода:
echo '</td>';
 echo '<td width = "50" align = "center">';
 echo '<input  type="button" style="float: center; height:22px; width: 50px"  button value="Names" onclick="open_win(' . $parameter . ')">';
 echo '</td>';
 echo '</tr>';


где переменная параметр имеет значения:
5_8, 1598_1605, 1601_1609, 1600_1601, ... ну и так далее

ОлегА 16.07.2013 11:26

мой вариант (выше) ваших функций написан как раз без разрывов - и он работает, ужас как вы строите html страницу...

Kaleos 16.07.2013 11:32

В варианте когда каждая функция занимает одну строку от начала до конца, без переносов, редактор говорит по каждой строке: недопустимый аргумент строка i-я символ 22.
То есть где-то здесь:

function open_win1(){var

skrudjmakdak 16.07.2013 11:36

покажите полностью. может он ругается на эту строчку из за чего то другого

Kaleos 16.07.2013 11:42

Цитата:

Сообщение от skrudjmakdak (Сообщение 262544)
покажите полностью. может он ругается на эту строчку из за чего то другого

Hедопустимый аргумент строка 1, т.е ниже, символ 22.Переносов нет как в этом посте:

function open_win1(){var myWin = window.open("http://localhost/Main/Names/7_6.html","Names","toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=yes, resizable=yes, width=1300, height=650");}


Возможно проблема в каких-то индивидуальных моих настройках php apache explorer, версиях

ОлегА 16.07.2013 11:44

Kaleos, нормально страницу стройте и все будет норм.

ОлегА 16.07.2013 11:45

у вас разрывы в функциях open_win1 и open_win3

Kaleos 16.07.2013 11:46

Цитата:

Сообщение от ОлегА (Сообщение 262547)
Kaleos, нормально страницу стройте и все будет норм.

Нормально это PHP скрипт внутри HTML? Да было бы хорошо, буду учиться.

skrudjmakdak 16.07.2013 11:47

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

в хроме есть фаербаг. чтобы вызвать, нажмите f12. там есть вкладка консоль (туда ошибки валятся), можете заскринить??..

ОлегА 16.07.2013 11:50

Цитата:

Сообщение от skrudjmakdak
а причем здесь php, если обрабатывается данный код на клиенте ???

так именно пхп ему и выстроил скрипты с разрывами. т.к. где то он сделал перевод строк.

skrudjmakdak 16.07.2013 11:52

ОлегА, когда я писал это сообщение, то я отвечал на вопрос: "Возможно проблема в каких-то индивидуальных моих настройках php apache explorer, версиях".

skrudjmakdak 16.07.2013 11:53

Цитата:

Сообщение от ОлегА (Сообщение 262552)
так именно пхп ему и выстроил скрипты с разрывами. т.к. где то он сделал перевод строк.

это я уже давно понял

ОлегА 16.07.2013 11:57

skrudjmakdak, ну цитатами тогда надо писать, не понятно же))

Kaleos 16.07.2013 11:58

Цитата:

Сообщение от skrudjmakdak (Сообщение 262550)
а причем здесь php, если обрабатывается данный код на клиенте ???
функция чистая, без ошибок.. а в каком браузере смотрите?? скрин можете прислать?

в хроме есть фаербаг. чтобы вызвать, нажмите f12. там есть вкладка консоль (туда ошибки валятся), можете заскринить??..

В firefox все работает

Сморю на закладке консоль-> ошибки, предупреждения все пусто

смотрю на закладке сценарий, пишет без разрывов
function open_win1(){var myWin = window.open("http://localhost/Main/Names/7_6.html","Score chart","toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=yes, resizable=yes, width=1300, height=650");}

skrudjmakdak 16.07.2013 11:58

а можете проект ваш архивом скинуть?? а то я так думаю мы будет до вечера разбираться))

Kaleos 16.07.2013 12:00

Цитата:

Сообщение от skrudjmakdak (Сообщение 262561)
а можете проект ваш архивом скинуть?? а то я так думаю мы будет до вечера разбираться))

Проект слегка секретный, извините но не могу, спасибо все приму к сведенью. Как разберусь отпишу

skrudjmakdak 16.07.2013 12:09

что ж там такого секретного то? вообще судя по вашему коду, там ничего секретного нет, имхо))

можете тогда скинуть php генерации ваших функций js


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