일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- 스마트컨트렉트테스트
- vue기초
- 오블완
- 러스트 기초
- Vue.js
- multicall
- 머신러닝기초
- ethers type
- ethers websocket
- ambiguous function description
- 러스트 기초 학습
- Vue
- 컨트렉트 동일한 함수이름 호출
- 스마트 컨트렉트 함수이름 중복
- chainlink 설명
- ethers
- git rebase
- 스마트컨트렉트 함수이름 중복 호출
- 티스토리챌린지
- nest.js설명
- ethers typescript
- SBT표준
- ethers v6
- 컨트렉트 배포 자동화
- 스마트컨트렉트 예약어 함수이름 중복
- rust 기초
- 프록시배포구조
- 러스트기초
- 체인의정석
- 스마트컨트렉트프록시
Archives
- Today
- Total
체인의정석
게시판 조회 화면 상황에 따라 다르게 띄우기 (오류 수정) 본문
728x90
반응형
1. 정보 조회해오는 화면을 2개로 안만들고 1개로 만든 후 상황에 따라서 다르게 뜨게 만들어 가는 중이므로, append가 연속해서 일어나는 오류가 일어났다. 이를 해결하기 위해 $("#contract_view_check").val("Y");를 추가하여 해결하였다.
서버사이드
function getboardInfo(args){
console.log("getboardInfo",args);
$.ajax({
type: "POST",
url : 'tech/getboardInfo',
data : {"bidx" :args.item.board_idx},
success: function(r){
if(r.success){
console.log("응답",r)
let board_idx = r.data[0].board_idx;
let title = r.data[0].title;
let content = r.data[0].content;
let contract_hash = r.data[0].contract_hash;
let contract_name = r.data[0].contract_name;
let contract_route = r.data[0].contract_route;
let contract_txid = r.data[0].contract_txid;
console.log(title,content)
$("#title_view").val(title);
$("#content_view").val(content);
if(contract_route){
if($("#contract_view_check").val()=="Y"){
alert("pass")
}else{
alert("in")
$("#contract_view_check").val("Y");
$("#contract_hash").val(contract_hash);
// $("#contract_view").text(`${contract_name}`);
get_blockchaindata(board_idx);
let pstr = "bidx=" + board_idx;
$("#contract_view").append("<a href='tech/contractdownload?" + pstr +"'>" + contract_name + "</a>");
};
$(".contract_display").show();
}else{
$(".contract_display").hide();
}
alert("게시판조회")
}else{
alert("에러 발생");
}
$("#viewboardmodal").modal('show');
}
})
}
게시판의 종류가 2가지 이며, 만약 값이 있을 경우에 append를 하면 안되므로 if 문을 써서 화면을 다르게 디스플레이 하였다.
2. 클라이언트
<p id="contract_view_check" style="display: none;"></p>
disply를 none으로 해둔다. 프론트엔드 프레임워크에서는 vue에서의 vuex와 같이 변수를 보관해주는 장소가 따로 있지만 ejs만 써서 하기때문에 이렇게 display를 hidden으로 해둬서 값을 체크하는 로직을 자주 사용한다.
728x90
반응형
'개발' 카테고리의 다른 글
MacOS - Express generator 인식이 안될 경우 (0) | 2021.01.26 |
---|---|
블록체인 공증 모듈 - 게시판 기능 만들기, 양쪽의 동의를 얻은 후 블록체인에 데이터 저장시키기 (0) | 2021.01.07 |
Express,node.js,solidity)블록체인에 있는 데이터 가져와서 표시하기 (0) | 2021.01.01 |
게시판 조회 기능 , 첨부파일 읽어오는 기능 만들기 (0) | 2020.12.31 |
Jquery & JsGrid) 화면 이쁘게 수정하기 & 게시판 기능 달기 (0) | 2020.12.30 |
Comments