javscript쓸 때 document.write(`<script> ...`)는 안되나요?

js 뉴비입니다.ㅎㅎ
한 개의 html 파일안에 몽땅 구현중이고 jquery를 같이 쓰고 있는데요,

비트코인 테이블이 있고, 거기서 한 개의 row(ex. BTC)를 클릭하면, BTC 차트가 그려지도록 구현중입니다.
만약 다른 row를 선택하면 다른 차트로 업데이트 되고, 차트가 그려져있는 상태에서 똑같은 row를 누르면 차트가 사라지는 형태로 구현하고 싶은데요.

표의 row를 선택할 때 selectedCoin이라는 script 변수에 name(BTC)를 저장했는데요. 이 변수를 사용하는 html 부분에서는 자동으로 갱신이 안되더라고요. 그래서 차트를 그리는 부분을 함수로 만들고 selectedCoin을 인자로 넘겨줘서 매번 새로 그리거나 hide하려는데요. script안에 new Trading.widget(); 이런 함수도 들어가고 document.write(<script>...);도 들어가서인지 syntax에러가 나는데 어떻게 해결할수있을까요?

오른쪽 화면에서 document.write(</script>); 부분을 쓰면 끝에 부분에 빨간 줄이 그어집니다.

document.write(‘<\/script>’)하시면 됩니다~

좋아요 1

답변 감사합니다. syntax 에러는 사라졌는데 로직에도 문제가 있었네요.

예를 들어 함수를 콜 하는 부분이


< body>
< table> 
    selectedCoin = 'BTC';
    < script> 함수 콜 하는 부분(selectedCoin)  < /script>
< /table>


< script> 차트 그려주는 부분 selectedCoin 활용 < /script>
< /body>

이런식으로 되어있다고 할 때 함수가 콜이 되면 위에 있었던 body 내용이 싹 다 날라가고 맨 아래부분에 있던 script 코드만 남게 되네요. 찾아보니 document.write()를 웹페이지를 그린 뒤 호출해서 그런거였네요.

암튼 그게 아니라 아래쪽에 차트를 추가하고 싶다면 어떻게 해야 될까요?
(태그 안에 style, class name 등 세부적으로 설정된것들이 많아서 더 어렵네요)

jquery를 사용하신다고 하셨으니, body 테그에 append 하시면 될거같네요~

좋아요 1