我正试图为新访问者(使用cookie)做一个小的下拉调查,这样我就可以收集数据,但我对如何编译它有点困惑。
如果单击了一个按钮,单击就会变成var answer1 = answer1 +1
,或者类似的东西。
我遇到的问题是指出它应该在哪里更改变量考虑到javascript是在本地运行的,它无法更新服务器值
有人能告诉我在按钮上添加什么吗?点击向答案变量添加一个,无论是PHP还是ajax,以及向服务器本身添加什么
如果你需要一个小调查本身的例子,这里是小提琴。
这是原始代码:
HTML:
<body>
<div class="poll-box">
<div class="poll-text">
<h1>Sorry, quick question!</h1>
<h2>Insert Question Here</h2>
<p>
<button onClick=""></button> Answer 1
<br />
<br />
<button onClick=""></button> Answer 2
<br />
</p>
</div>
</body>
CSS:
html {
font-family:Lato, sans-serif;
}
.poll-box {
width:60%;
background-color:#648FBD;
height:40%;
margin-left:auto;
margin-right:auto;
vertical-align:middle;
position:absolute;
border-radius: 16px 16px 16px 16px;
-moz-border-radius: 16px 16px 16px 16px;
-webkit-border-radius: 16px 16px 16px 16px;
border: 0px solid #000000;
}
.poll-box h1 {
padding-top:2%;
font-size:24px;
}
.poll-box h2 {
padding-top:2%;
font-size:18px;
}
.poll-box p {
padding-top:2%;
font-size:14px;
}
.poll-text {
left:5%;
position:absolute;
}
.poll-text button {
padding-right:3%;
padding-top:3%;
}
与其使用按钮并对JavaScript变量进行计数,不如使用HTML复选框。这些复选框不会触发后台操作(如果没有明确要求的话),因为在使用按钮时需要这些操作。当你继续使用这里的按钮时,你需要在所有这些东西背后有一个更复杂的逻辑,否则只需将每个用户的决定/更改立即保存到数据库中。
使用表单时,您将在用户的提交操作汇总为一个结果后发送用户决定/选择,而不是强制您一次又一次地处理每次单击。这将为您节省一些流量、计算时间,也许还可以节省数据库查询。
要使用复选框,只需在这些新的复选框元素周围放置一些"表单"-DOM,并在下面添加一个提交按钮,就可以得到这样的结果:
<form class="poll-box" method="post" action="handler.php">
<div class="poll-text">
<h1>Sorry, quick question!</h1>
<h2>Insert Question Here</h2>
<p>
<input type="checkbox" name="some_var_name_to_use"> Answer 1
<hr />
<input type="checkbox" name="some_var_name_to_use_2"> Answer 2
</p>
</div>
<input type="submit" value="send" />
</form>
PS。您错过了在正文结束前关闭一个div层。