我有一个按钮:
<span id="signinButton">
<span
class="g-signin"
data-callback="onSignInCallback"
data-clientid="CLIENT_ID"
data-cookiepolicy="single_host_origin"
data-requestvisibleactions="http://schemas.google.com/AddActivity"
data-scope="https://www.googleapis.com/auth/plus.login">
</span>
</span>
按下时,它会运行一个函数......此时它会关闭,发出 AJAX 帖子,并在控制台中打印一些文本(只是为了测试,这部分工作):
<script type="text/javascript">
var helper = (function() {
return {
onSignInCallback: function(data) {
var dataString = 'access_token=' + data['access_token'];
$.ajax({
type: "POST",
url: "getdetails",
data: dataString,
dataType: 'html',
timeout: 0,
statusCode: {
200: function(data){
console.log(data);
},
error: function(data){
console.log("There was an error");
}
}
});
}
};
})();
function onSignInCallback(data) {
helper.onSignInCallback(data);
}
</script>
但是,问题是每次我在不单击按钮的情况下刷新页面时,我的函数都会运行,并且通过 AJAX 发布数据并将文本打印到控制台中。
知道为什么会这样吗?我想要它(显然)所以这只发生在他们点击按钮时。
我正在使用 Google Plus API,代码修改自:
https://github.com/googleplus/gplus-quickstart-javascript/blob/master/index.html#L44