Javascript或jQuery:将输入值保存到变量中,该变量保存到另一个变量中

时间:2017-12-01 19:12:08

标签: javascript jquery forms variables get

我一直在尝试将输入值保存到变量中,然后保存到另一个变量中,该变量保存一个api调用url,然后绑定到getJSON函数,由于某种原因我似乎无法保存值对变量的输入,它一直回复为空白,但在控制台中它显示为输入值所持有的。我做错了什么?

更新 以下是不包括已保存变量的网址图片。它应该显示我在完整URL中输入变量的内容。如您所见,login_name =为空,login_password也是如此。

enter image description here

jsFiddle:https://jsfiddle.net/m25pLka5/

HTML:

<form id="sso-login">
  <table>
    <tr>
      <td>User Name:</td>
      <td><input class="username" name=login_name type=text size=15 maxlength="100"></td>
    </tr>
    <tr>
      <td>Password:</td>
      <td><input class="password" name=login_password type=password size=15 maxlength="100"></td>
    </tr>
    <tr>
      <td>Remember Me:</td>
      <td><input name=remember_me type=checkbox></td>
    </tr>
  </table>
  <input type="submit" value="Submit" name="Submit" />
</form>

jQuery:

$(function(){
  var username = $('.username').val();
  var password = $('.password').val();

  var ssoURL = 'https://testing.com/';
  var ssoMethod = 'testingMethod&login_name='+ username +'&login_password='+ password +'&v=1.0&response_format=json';

  $("#sso-login").submit(function(e) {
    e.preventDefault();
    $.getJSON(ssoURL + ssoMethod, function(data) {
      console.log(data);
    });
  });
});

1 个答案:

答案 0 :(得分:1)

尝试将代码改为某种

$(function(){  
  $("#sso-login").submit(function(e) {

   var username = $('.username').val();
  var password = $('.password').val();

  var ssoURL = 'https://testing.com?';
  var ssoMethod = 'testingMethod&login_name='+ username +'&login_password='+ password +'&v=1.0&response_format=json';
    e.preventDefault();
    $.getJSON(ssoURL + ssoMethod, function(data) {
      console.log(data);
    });
  });
});

而不是使用类从元素获取val尝试使用id有时如果在dom中的其他地方使用类(在输入之前)可能会发生冲突,所以尽可能使用id

而且我猜你的apis url在params params开始之后是错的?