Javascript, jQuery, Ajax, API_Homework

25411 ワード


♠HOMEWORK-2♠


ショッピングモールで、為替レート情報を入力します(ロードが完了したら、為替レートAPIを使用して為替レートを表示します)

  • 完全なソースコード

  • <!doctype html>
    <html lang="en">
    
    <head>
        <!-- Required meta tags -->
        <meta charset="utf-8">
        <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
    
        <!-- Bootstrap CSS -->
        <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css"
              integrity="sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm" crossorigin="anonymous">
    
        <!-- Optional JavaScript -->
        <!-- jQuery first, then Popper.js, then Bootstrap JS -->
        <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
        <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js"
                integrity="sha384-ApNbgh9B+Y1QKtv3Rn7W3mgPxhU9K/ScQsAP7hUibX39j7fakFPskvXusvfa0b4Q"
                crossorigin="anonymous"></script>
        <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js"
                integrity="sha384-JZR6Spejh4U02d8jOt6vLEHfe/JQGiRRSQQxSfFWpi1MquVdAyjUar5+76PVCmYl"
                crossorigin="anonymous"></script>
    
        <title>스파르타코딩클럽 | 부트스트랩 연습하기</title>
    
        <link href="https://fonts.googleapis.com/css2?family=Jua&display=swap" rel="stylesheet">
    
        <style>
            * {
                font-family: 'Jua', sans-serif;
            }
    
            .item-img {
                width: 500px;
                height: 300px;
    
                background-image: url("https://t1.daumcdn.net/liveboard/nts/5bcccfbd33da4865817b9c606b6b852e.JPG");
                background-position: center;
                background-size: cover;
            }
    
            .price {
                font-size: 20px;
            }
    
            .item-desc {
                width: 500px;
                margin-top: 20px;
                margin-bottom: 20px;
            }
    
            .item-order {
                width: 500px;
            }
    
            .btn-order {
                margin: auto;
                width: 100px;
    
                display: block;
            }
    
            .wrap {
                width: 500px;
                margin: auto;
            }
    
            .rate {
                color: blue;
            }
        </style>
    
        <script>
            $(document).ready(function () {
                get_rate();
            });
    
            function get_rate(){
                $.ajax({
                    type: "GET",
                    url: "http://spartacodingclub.shop/sparta_api/rate",
                    data: {},
                    success: function (response) {
                        let now_rate = response['rate'];
                        $('#now-rate').text(now_rate);
                    }
                })
            }
    
            function order() {
                alert('주문이 완료되었습니다!');
            }
        </script>
    </head>
    
    <body>
    <div class="wrap">
        <div class="item-img"></div>
        <div class="item-desc">
            <h1>양초를 팝니다 <span class="price">가격:3,000/</span></h1>
            <p>이 양초는 사실 특별한 힘을 지니고 있어요!</p>
            <p class="rate">달러-원 환율: <span id="now-rate">1219.15</span></p>
        </div>
        <div class="item-order">
            <div class="input-group mb-3">
                <div class="input-group-prepend">
                    <span class="input-group-text">주문자이름</span>
                </div>
                <input type="text" class="form-control" aria-label="Default" aria-describedby="inputGroup-sizing-default">
            </div>
            <div class="input-group mb-3">
                <div class="input-group-prepend">
                    <label class="input-group-text" for="inputGroupSelect01">수량</label>
                </div>
                <select class="custom-select" id="inputGroupSelect01">
                    <option selected>-- 수량을 선택하세요 --</option>
                    <option value="1">1</option>
                    <option value="2">2</option>
                    <option value="3">3</option>
                </select>
            </div>
            <div class="input-group mb-3">
                <div class="input-group-prepend">
                    <span class="input-group-text">주소</span>
                </div>
                <input type="text" class="form-control" aria-label="Default" aria-describedby="inputGroup-sizing-default">
            </div>
            <div class="input-group mb-3">
                <div class="input-group-prepend">
                    <span class="input-group-text">전화번호</span>
                </div>
                <input type="text" class="form-control" aria-label="Default" aria-describedby="inputGroup-sizing-default">
            </div>
            <button type="button" onclick="order()" class="btn btn-primary btn-order">주문하기</button>
        </div>
    </div>
    </body>
    
    </html>
  • プール結果画面