테스트 사이트 - 개발 중인 베타 버전입니다

iexplre에서는 되는데 edge에서는 작동이 안되는 이유가?

s2ecool 4년 전 조회 6,732

그누보드 4 환경에서 개발한 사이트입니다.

그런데~ 갑자기 브라우저 환경문제인지 java 문제인지 도통 알수가 없네요~ ㅠㅠ

 

오류부분만 소스를 올려봅니다. ㅠㅜ

 

....

 

] value="">

 

 

이렇게 코드(소스)가 있습니다.

이때 분류수정을 위해 체크박스를 선택해서 분류수정을 누르면, 아무반응이 없습니다.

하나도 선택안하면 분류수정할 자료를 한개 선택하세요.

두개 선택하면 분류수정할 자료를 한개만 선택하세요. 여기까지는 잘 됩니다.

 

그런데 한개를 선택하고 실행버튼을 누르면 반응이 없네요!!!!

개발자모드(F12)를 눌러서 오류를 확인하면

Console 오류는 

Uncaught TypeError: Cannot read property 'elements' of undefined

Souress에는 

stri =  f.elements("ca_id["+inti+"]"); (X)

여기에 오류가 있다고 나옵니다.

 

제가 개발자가 아니다보니.. 어떤 문제인지 몇일째 고생만 하고 있습니다.

값을 못 얻어오는건지.. 자바스크립트 오류인지 ㅠㅠ

희안한건 iexplore에서는 작동이 또 잘됩니다. 

구글이나 Microsoft Edge에서만 작동이 안되네요~~ common, head.sub.php 관련된 모든 부분도 체크를 했는데 원인을 모르겠네요~ ㅜㅠ 브라우저가 바뀌면서 뭔가 충돌이 나는건지도...ㅠㅠ

도움을 부탁드려요!~ 

 

댓글을 작성하려면 로그인이 필요합니다.

답변 3개

4년 전

var f = document.category;

->

var f = document.forms['category'];

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

s
s2ecool
4년 전
ㅜㅜ 이상하네요.. 도움주신부분 확인해서 넣었는데도... 반응이 없습니다.ㅠㅠ

댓글을 작성하려면 로그인이 필요합니다.

s
4년 전

네..  function up에 아래와 같이 추가했습니다.  

function up(str) {    //분류수정     var f = document.category;     var chk = document.getElementsByName("chk[]");     var bchk = false;     var intk = 0;     var inti = 0;     var stri=0;

    for (i=0; i

    if (!bchk)      {         alert(str + "할 자료를 한개 선택하세요.");         return;     }

    if(intk > 1)     {         alert(str + "할 자료를 한개만 선택하세요.");         return;     }          stri =  f.elements("ca_id["+inti+"]");

//    alert(inti+"="+stri.value);

    popupWindow = window.open('./cate_add1.php?ca_id='+stri.value+'&mode=up1','category','left=800,top=400,width=460,height=245,scrollbars=0'); }

 

위와 같이 추가하는게 맞나요??? 

function up(str){ 바로 아래 추가해도 아무반응 없어서...

 

var f = document.category;

stri =  f.elements("ca_id["+inti+"]");

 

위처럼.. f.elements 바로 위에도 추가해서 테스트를 해봤는데 아무런 반응이 없네요~ ㅠㅠ

세션문제인지..ㅠㅠ 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 4개

P
Policia
4년 전
그렇게 추가하는게 맞고 한번 컨트롤+F5으로 캐시초기화 새로고침해보세요
s
s2ecool
4년 전
ㅠㅠ 캐시 초기화해서 다시 실행해도 안되네요~
동일하게 아무반응이 없어서 f12 개발자모드 Sources를 체크하면 동일한 코드에 붉은색 x로 표시되네요~ ㅠㅠㅠㅠ
P
Policia
4년 전
그럼 document.category가 없다는건데 개발자모드 콘솔에서 document.category한번 찍어보세요 에러나면 form name=category가 없다는건데...
s
s2ecool
4년 전
개발자모드 콘솔에서 document.category한번 찍어보세요

위 정보를 찍어본다는게 무슨말씀인지 모르겠네요 ㅠㅠ
해당 파일 내
<form name="category" method="post" action="<?php echo $_SERVER['PHP_SELF'];?>">
위와같이 존재해서요~ ㅠㅠ

도움주셔서 감사합니다. 역시 개발자가 아닌관계로 잘 안되네요~~ ㅠㅠ

댓글을 작성하려면 로그인이 필요합니다.

Policia
4년 전

f.elements

면 변수 f의 엘리먼트들을 가져와라 라고 하는건데

 

각 함수가 쓰여진곳에 변수 f의 정의가 내려지지않았습니다

 

var f = document.category;의 정의가 지금 함수 밖에있는데요 이게 밖에있으면안되고

각 함수(function)안에 들어가있어야합니다

 

밖에있는 변수 f의 정의를 함수안으로 각각 넣어주세요

로그인 후 평가할 수 있습니다

답변에 대한 댓글 3개

s
s2ecool
4년 전
script 안에 function이 여러 개 존재합니다.
function { 안에
f의 정의: var f = document.category; 를 추가했는데도

동일하게 stri = f.elements("ca_id["+inti+"]"); (x)
오류는 동일하게 보여지네요... ㅠㅠ 일단, 아무반응이 없네요~ ㅠㅠ
제가 잘 못하고 있는지도..ㅠ ㅠ
P
Policia
4년 전
function에 다 추가하라는 말이아니라 f.elements를 사용하는 함수안에만 정의하시면됩니다

function up랑 function del1에 작성하셨나요?
P
Policia
4년 전
그리고 js의 경우 캐시가남기때문에 수정후에는 ctrl+F5으로 캐시 초기화후에 정상작동하는지 체크하셔야합니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인