我尝试使用https://developers.google.com/identity/sign-in/web/sign-in在HTML隐藏表单字段中捕获Google用户名和Google电子邮件地址,但我遇到了麻烦。以下是我的代码。我是JavaScript的新手。谢谢你的帮助!
<script src="https://apis.google.com/js/platform.js" async defer></script>
<form action="/student/webdesign/2016/02_benrud/tinker/googleVerify/loginHandler.php" method="post" name="form1" id="form1">
<p>
<input name="namelGoogle" type="hidden" id="nameGoogle" value="">
<input name="mailGoogle" type="hidden" id="mailGoogle" value="">
</p>
<p>
<input type="submit" name="submit" id="submit" value="Submit">
</p>
</form>
<div class="g-signin2" data-onsuccess="onSignIn"></div>
<script>
function onSignIn(googleUser) {
var profile = googleUser.getBasicProfile();
console.log('ID: ' + profile.getId()); // Do not send to your backend! Use an ID token instead.
console.log('Name: ' + profile.getName());
console.log('Image URL: ' + profile.getImageUrl());
console.log('Email: ' + profile.getEmail());
document.getElementById("mailGoogle").value = profile.getName();
document.getElementById("nameGoogle").value = profile.getEmail();
}
</script>
控制台的屏幕截图
我希望在名为&#34; mailGoogle&#34;的隐藏字段中捕获电子邮件信息。
我希望在名为&#34; nameGoogle&#34;的隐藏字段中捕获名称信息。
<script> </script>
标记(如果有)进行哪些更改<input name="emailGoogle" type="hidden" id="mailGoogle" value="I want email from google here">
代码我是JavaScript新手。谢谢你的帮助。
答案 0 :(得分:1)
document.getElementById("mailGoogle").value = profile.getName();
document.getElementById("nameGoogle").value = profile.getEmail();
让您在隐藏的字段中识别您的ID,这应该可以满足您的需求。
JQuery方式可以如下工作:
$('#nameGoogle').val(profile.getName());
$('#mailGoogle').val(profile.getEmail());