如何将表单类值组合到新的变量字符串中

时间:2016-01-18 19:31:19

标签: javascript

我正在尝试将表单中的两个类组合成一个新值。我需要这个用于商家流程(卡片上的名字)

到目前为止我尝试过:

var nameFirst = $('.nameFirst').val(), nameLast = $('.nameLast').val();
var nameOnCard = nameFirst + nameLast;

编辑:添加HTML表单代码 (这是有效的 - 如果我只调用一个var类作为“卡片上的名字”,它就会被输入正确。就在我尝试梳理这两个时,它会破坏它)

<input name="first" type="text" class="nameFirst input-medium" required="" placeholder="Enter your first name">
<input name="last" type="text" class="nameLast input-medium" required="" placeholder="Enter your last name">

这是我的JS文件的样子(我正在通过条带处理)

Stripe.card.createToken({
            number: ccNum,
            cvc: cvcNum,
            exp_month: expMonth,
            exp_year: expYear,
            name: nameOnCard,
            address_line1: addressLine,
            address_city: addressCity,
            address_state: addressState,
            address_zip: addressZip,
        }, stripeResponseHandler);

我可以让上面的所有内容正确处理,而不是“名字”

我也尝试将两者结合在一个隐藏的输入上,但由于这些值是在外部JS上调用的,所以我也无法使用它。

(理想情况下我想在两者之间加一个空格)

我对JS不是很熟练,所以解释会有所帮助。谢谢!

1 个答案:

答案 0 :(得分:1)

您的代码适用于我(应该如此)。我可以问你什么时候触发你的Javascript代码?如果在用户输入任何内容之前执行,那可能就是错误。

以下代码在10秒后显示nameOnCard变量。超过这10秒,变量已设置,并且不会根据您对这些输入所做的更改进行更新。

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <title>title</title>
  </head>
  <body>

    <form>
        <input name="first" type="text" class="nameFirst input-medium" required="" placeholder="Enter your first name">
        <input name="last" type="text" class="nameLast input-medium" required="" placeholder="Enter your last name">
    </form>

    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>    
    <script>
        setTimeout(function(){
            var nameFirst = $('.nameFirst').val(), nameLast = $('.nameLast').val();
            var nameOnCard = nameFirst + nameLast;
            console.log(nameOnCard);
        }, 10000);
    </script>
  </body>
</html>