자바빵
548
2021-11-11 15:56:14
2
119

HTML의 data 속성이 최신값을 가져오지 못합니다.



<input type="file" class="comment_file display-none" id="file_comment_1" name="file" onchange="changeFile(this);" data-file-no="328">


코드는 단순하게 이런식입니다.

1. 파일을 올리면 바로 업로드가 되고,

2. 업로드 된 파일의 fileNo를 data-file-no에 넣습니다.


예를들어 위 코드는 fileNo가 328번인데, 새로 이미지를 넣으면 329로 바뀝니다.

당연히, 실제 HTML코드에도 잘 반영되어있구요.


하지만, jquery를 통해서 $('#file_comment_1').data('fileNo')를 찍어보면, 계속 328번이 나옵니다;;;

이미지를 계속 넣어서 330, 331, 332 번 이미지가 순서대로 HTML코드에서는 바뀌는게 보이는데,

jquery는 계속 328번이라고 나오네요;;;;



뭐가 문제인지 정말 1도 감이 안오는데,

의심가는 부분이 있을까요...??

0
  • 답변 2

  • konic
    2021-11-11 16:05:28

    jquery data의 캐싱 관련 문제입니다.


    호출전에 

    $('#file_comment_1').removeData('file-no').data('file-no');


    리무브 데이타 하셔야 정상적으로 호출됩니다.



    https://seungdols.tistory.com/659

  • 자바빵
    548
    2021-11-11 16:23:56

    @konic


    와......... 오늘 하루종일 어디가 문제인지 찾고 있었는데!!!!!!

    결국 버그였다니...ㅠㅠ


    복받으실껍니다!!! 감사합니다!!!ㅎㅎ

    바로 해결했슴다!!!

  • 로그인을 하시면 답변을 등록할 수 있습니다.