将表单字段值提交给Javascript函数

时间:2013-08-26 09:55:36

标签: javascript html forms api

我正在使用Buddy.com的API来构建一个带有面向管理员和用户创建的Web界面的移动应用程序。我还处于这个项目的初始阶段。

我尝试构建的第一个页面是网站的“用户注册”页面。 此页面将有一个表单,要求用户提供用户名,密码,电子邮件和其他一些字段。

我在页面http://buddy.com/developers/#UserAccount_Profile_Create

中使用javascript格式

该函数是:function createUserWithName();它有一些输入。该函数如下所示:

function fixedEncodeURIComponent (str) {  
    return encodeURIComponent(str).replace(/[!'()*]/g, escape);  
}
function createUserWithName(aName, anEmail) 
{
    var finalURLStr = "https://webservice.buddyplatform.com/Service/v1/BuddyService.ashx";

    finalURLStr += "?UserAccount_Profile_Create";    // API Call
    finalURLStr += "&BuddyApplicationName=" + fixedEncodeURIComponent("<#Buddy App Name#>");
    finalURLStr += "&BuddyApplicationPassword=" + fixedEncodeURIComponent("<#Buddy App Password#>");
    finalURLStr += "&NewUserName=" + fixedEncodeURIComponent(aName);                    // The user name
    finalURLStr += "&UserSuppliedPassword=" + fixedEncodeURIComponent("<#password#>");  // User password
    finalURLStr += "&NewUserGender=" + "male";                                          // "male" or "female"
    finalURLStr += "&UserAge=" + 29;                                                    // user age (int)
    finalURLStr += "&NewUserEmail=" + fixedEncodeURIComponent(anEmail);                 // user email
    finalURLStr += "&StatusID=" + -1;                                                   // see status table (1-7 or -1)
    finalURLStr += "&FuzzLocationEnabled=" + 1;                                         // true / false: location isn't/is reported accurately
    finalURLStr += "&CelebModeEnabled=" + 0;                                            // true if user is hidden from non-friends
    finalURLStr += "&ApplicationTag=";                                                  // app-related info
    finalURLStr += "&RESERVED=";                                                       // leave empty

    $.ajax({ url: finalURLStr })
        .done( function(data) {
            // Result is a simple string
            alert("Result: " + data);
        })
        .fail(function() {
            alert("Error while contacting Buddy!");
       });
}

我创建了一个表单,要求用户输入此信息。

如何将表单中的字段数据传递给此函数?

这是我表单的代码:

<form id="register">

<table width="200" border="0" cellspacing="0" cellpadding="0">
  <tr>
    <td><label for="username">Username*:</label>
        <input type="text" id="username" name="username" />
    </td>
  </tr>
  <tr>
    <td><label for="password">Password*:</label>
        <input type="text" id="password" name="password" />
    </td>
  </tr>
  <tr>
    <td><label for="email">Email*:</label>
        <input type="text" id="email" name="email" />
    </td>
  </tr>
  <tr>
    <td><label for="gender">Gender*:</label>
        <select id="gender">
            <option value="null">Please Choose One...</option>
            <option value="Male">Male</option>
            <option value="Female">Female</option>
        </select>
    </td>
  </tr>
</table>
<input class="button" name="submit" type="button" value="submit" onclick="createUserWithName(username.value)" />
</form>

我相信一旦有人告诉我如何将用户名和电子邮件发送到javascript函数,我将能够弄清楚其余部分。

谢谢

4 个答案:

答案 0 :(得分:2)

你可以使用:

document.getElementById('username').value

在你的javascript函数中。提醒值以检查您是否收到它。

答案 1 :(得分:1)

首先创建一个收集所有表单数据的函数

function getFormData(){ 
var name=document.getElementById('username').value;
var email=document.getElementById('email').value;
/* some other fields */
/* now call ur function by passing the above values */
createUserWithName(name, email);
}

在表单中调用getFormData()方法

<input class="button" name="submit" type="submit" value="submit" onclick="getFormData()" />

答案 2 :(得分:0)

有很多方法,但你可以使用jquery东西

username = $("username").val();

答案 3 :(得分:0)

var username = $("#username").val();
var email= $("#email").val();
createUserWithName(username , email);