jquery - passing HTML form input to JavaScript to BaaS -


i trying store user html input field values in baas (backendless). using fixed values in .js script , executing upon page load, able store fields (apiendpoint, apisecretkey, emailaddress) request table:

function request(args) {     args = args || {};     this.apiendpoint = args.apiendpoint || "";     this.apisecretkey = args.apisecretkey || "";     this.emailaddress = args.emailaddress || ""; }  var requestobject = new request( { apiendpoint: "https://api.foo.com/", apisecretkey: "foo", emailaddress: "foo@foo.com", });  var savedrequest = backendless.persistence.of( request ).save( requestobject ); 

what store variables (and on button click rather page load). here's basic html form:

<head>     <script src="libs/backendless.js"></script>     <script src="js/app.js"></script> </head>  <body>     <form>         <input type="text" name="endpoint"><br>         <input type="text" name="secretkey"><br>         <input type="text" name="email"><br>         <input type="button" onclick="________" value="submit">     </form> </body> 

and app.js variables:

function request(args) {     args = args || {};     this.apiendpoint = args.apiendpoint || "";     this.apisecretkey = args.apisecretkey || "";     this.emailaddress = args.emailaddress || ""; }  var endpoint = document.getelementsbyname("endpoint").value,     secretkey = document.getelementsbyname("secretkey").value,     email = document.getelementsbyname("email").value;  var requestobject = new request( { apiendpoint: endpoint, apisecretkey: secretkey, emailaddress: email, });  var savedrequest = backendless.persistence.of( request ).save( requestobject ); 

nothing happens when click submit button. onclick="" in form, have tried request(), javascript: request(), backendless.persistence.of( request ).save( requestobject );.

what doing wrong? appreciate help.

if javascript pasted in javascript on page it's it's being executed on page load (which why hardcoded values work, exist @ load time). want execute code when submit button clicked. can assigning value onsubmit attribute, create function in javascript called senddata.

edit

looks messed function forgetting include actual call baas. here's snippet demonstrating how should work. don't want onclick handler assigned submit button.

also, getelementsbyname returns nodelist not element, value property not defined, you'd have iterate through list or access first element. getelementbyid better if don't mind using ids.

function request(args) {      args = args || {};      this.apiendpoint = args.apiendpoint || "";      this.apisecretkey = args.apisecretkey || "";      this.emailaddress = args.emailaddress || "";  }      function senddata () {    var endpoint = document.getelementbyid("endpoint").value,      secretkey = document.getelementbyid("secretkey").value,      email = document.getelementbyid("email").value;      var requestobject = new request( {      apiendpoint: endpoint,      apisecretkey: secretkey,      emailaddress: email,    });    alert('apiendpoint = ' + requestobject.apiendpoint + '\n' +'apisecretkey = ' + requestobject.apisecretkey + '\n' + 'emailaddress = ' + requestobject.emailaddress);    //var savedrequest = backendless.persistence.of( request ).save( requestobject );  }
<body>      <form onsubmit="senddata()">          <input type="text" id="endpoint"><br>          <input type="text" id="secretkey"><br>          <input type="text" id="email"><br>          <input type="submit" value="submit">      </form>  </body>


Comments

Popular posts from this blog

javascript - Bootstrap Popover: iOS Safari strange behaviour -

Magento/PHP - Get phones on all members in a customer group -

session - Logging Out Using PHP -