Как заставить работать функцию JQuery при вызове в HTML для страницы AWS S3 stati c? - PullRequest
0 голосов
/ 19 апреля 2020

Я пытаюсь создать форму для AWS S3 stati c зрение, используя JQuery Скрипт, и форма / функция не работает. Я пытался изменить форму html на onClick="submitToAPI(this) вместо использования (event).

Код формы:

<form id="contact-form" method="post">
      <h4>Name:</h4>
      <input type="text" style="height:35px;" id="name-input" placeholder="Enter name here…" class="form-control" style="width:100%;" /><br/>
      <h4>Phone:</h4>
      <input type="phone" style="height:35px;" id="phone-input" placeholder="Enter phone number" class="form-control" style="width:100%;"/><br/>
      <h4>Email:</h4>
      <input type="email" style="height:35px;" id="email-input" placeholder="Enter email here…" class="form-control" style="width:100%;"/><br/>
      <h4>How can we help you?</h4>
      <textarea id="description-input" rows="3" placeholder="Enter your message…" class="form-control" style="width:100%;"></textarea><br/>
      <div class="g-recaptcha" data-sitekey="6Lc7cVMUAAAAAM1yxf64wrmO8gvi8A1oQ_ead1ys" class="form-control" style="width:100%;"></div>
      <button type="button" onClick="submitToAPI(event)" class="btn btn-lg" style="margin-top:20px;">Submit</button>
</form>

Затем в тегах скрипта у меня есть этот код для JQuery, который отправляет ответы API, который направляет его в электронное письмо.

function submitToAPI(e) {
       e.preventDefault();
       var URL = "_URL TO API_";

       var name = $("#name-input").val();
       var phone = $("#phone-input").val();
       var email = $("#email-input").val();
       var desc = $("#description-input").val();
       var data = {
          name : name,
          phone : phone,
          email : email,
          desc : desc
        };

       $.ajax({
         type: "POST",
         url : "_URL TO API_",
         dataType: "json",
         crossDomain: "true",
         contentType: "application/json; charset=utf-8",
         data: JSON.stringify(data),


         success: function () {
           // clear form and show a success message
           alert("Successfull");
           document.getElementById("contact-form").reset();
       location.reload();
         },
         error: function () {
           // show an error message
           alert("UnSuccessfull");
         }});
     }

Так как я не использовал JQuery раньше, и это первый раз, когда я пытаюсь запустить реальный веб-сайт, есть ли что-то, чего мне не хватало в функции / onClicked, чтобы это не запустилось и отправив форму?

1 Ответ

0 голосов
/ 29 апреля 2020

Мне пришлось изменить «Access-Control-Allow-Attribute» при создании CORD на «*», чтобы включить все возможные точки. Мне пришлось это из-за запуска тестов на локальном хосте.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...