-1

如何使用 JSON 将表单电子邮件发送到 REST 服务

我正在尝试:

// Send Mail
$('#btn_send').click(function() {

    //  Data object contact
    this.name = $('#inputnome').val();
    this.email = $('#inputemail').val();
    this.subject = $('#inputassunto').val();
    this.message = $('#textareamsg').val();
    this.toJsonString = function() {
        return JSON.stringify(this);
    };

    $.ajax({
        type: "POST",
        url: "http://localhost:8080/MailWS",
        data: contact.toJsonString(),
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: function(data, status, jqXHR) {
            alert(status.toString());
        },
        error: function(jqXHR, status) {
            alert(status.toString());
        }
    });
});
4

1 回答 1

1

我认为问题在于您没有将 onclick 操作绑定到您的按钮。尝试将您的整个 javascript 包含在$( document ).ready(function() {});其中或执行类似这样更清洁的操作。

$( document ).ready(function() {
  $('#btn_send').click(function() {
    sendEmail();//
  });
});

function sendEmail(){

  var valuesArr = new Array();
  valuesArr.push($('#inputnome').val());
  valuesArr.push($('#inputemail').val());
  valuesArr.push($('#inputassunto').val());
  valuesArr.push($('#textareamsg').val());

  var jsonText = JSON.stringify(valuesArr);
  $.ajax({
      type: "POST",
      url: "http://localhost:8080/MailWS",
      data: jsonText,
      contentType: "application/json; charset=utf-8",
      dataType: "json",
      success: function(data, status, jqXHR) {
          alert(status.toString());
      },
      error: function(jqXHR, status) {
          alert(status.toString());
      }
  });
}
于 2013-10-07T14:53:46.337 回答