作者ben0065 (oujiyo)
看板PHP
标题[请益] PHP Form表单利用js来判断是否有填写
时间Wed Feb 4 21:05:59 2015
跟各位大大请教一下,目前要写一个问卷的填写,面临到如果
答题为五个选择,非常不满意、不满意、普通、满意、非常满意,
我是先去资料库抓题目後来跑五个radio来单选,但面临到例如
我抓三笔题目来跑,那以下程式码我要怎麽去判断是否有没点选到的radio值呢?
因为每一笔radio名称都只能给五个单选,所以我是用回圈来把radio的name
加上$i来增加每个name的区别,以下为程式码不知该如何修改让他跑三笔
之中有未填写时跳出视窗,问题出在於我现在跑回圈 所以作答後总共会产生
三个值能POST过去下一页,为a1、a2、a3,但在javascript部分我只能写死
a1来侦测到是否有空值,不知道有没有更便利的方法能直接都侦测到有空值後弹
出视窗呢?
程式码:
<?php
header("content-type:text/html; charset=utf-8");
require_once("mysqlconnect.php");
$sql = "select tid, content from topic where utype = '1'and ttype = '1'
order by tid";
$result = mysql_query($sql);
echo "<form name=\"reg\" method=\"POST\" action=\"test3.php\">";
echo "<input type =\"submit\" name =\"button2\" value =\"送出\"
onClick=\"check()\"/><br>";
for ($j=1;$j<=3;$j++){
$row = mysql_fetch_row($result);
$tid[] = $row[0];
echo "<table border = 0>";
echo "<input type=\"hidden\" name = \"tid$i$j\" value = \"$row[0]\">";
echo "<tr><td bgcolor = #D8F6CE width = \"415\"><font face=\"标楷体\" size =
\"4\">$j.$row[1]</font></td></tr></table>";
echo "<table border = 0>";
echo "<tr bgcolor = #F5BCA9><td><input type=\"radio\" name=\"a$j\"
value=\"1\"></td><td><font face=\"标楷体\" size = \"3\">非常不满意
</font></td>";
echo "<td><input type=\"radio\" name=\"a$j\"
value=\"2\"></td><td><font face=\"标楷体\" size = \"3\">不满意</font></td>";
echo "<td><input type=\"radio\" name=\"a$j\"
value=\"3\"></td><td><font face=\"标楷体\" size = \"3\">普通</font></td>";
echo "<td><input type=\"radio\" name=\"a$j\"
value=\"4\"></td><td><font face=\"标楷体\" size = \"3\">满意</font></td>";
echo "<td><input type=\"radio\" name=\"a$j\"
value=\"5\"></td><td><font face=\"标楷体\" size = \"3\">非常满意</font></td>";
}
echo "</table><form>";
?>
<SCRIPT type="text/javascript">
function check()
{
if(!reg.a1[0].checked && !reg.a1[1].checked && !reg.a1[2].checked
&& !reg.a1[3].checked && !reg.a1[4].checked)
{
alert("尚未达题");
}
<!-- 若以上条件皆不符合,也就是表单资料皆有填写的话,则将资料送出 -->
else reg.submit();
}
</SCRIPT>
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 42.79.61.229
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/PHP/M.1423055162.A.F13.html
1F:推 stockup: 判断a1 a2 a3的值是不是都介於1~5中 02/04 23:04
2F:→ MOONRAKER: 天啊你javascript这样写很老式了 老到不合乎DOM 02/05 00:25
3F:→ MOONRAKER: HTML也老 学点CSS吧 一路echo到底也是 看得蛋蛋都疼 02/05 00:26
4F:推 shadowjohn: 这篇让我想起15年前,我也是这样写...XD 02/05 01:48
5F:→ MangoTW: 这样ECHO不觉得累吗?还要反斜线… 02/05 03:44
6F:推 bcawosxy: 蛋疼+1 02/05 09:43
7F:推 LaPass: 嗯... 落後15年 02/05 10:17
8F:嘘 KawasumiMai: 关金玉屁事 02/05 12:24
9F:→ shadowjohn: 楼上火气真大,发生什麽事了 02/05 13:19
10F:→ KawasumiMai: 没什麽,看到某人一天到晚懒趴痛觉得很碍眼而已 02/05 14:48
11F:→ KawasumiMai: 人家诚心诚意来请教问题,请别用居高临下的口气消遣 02/05 14:54
12F:推 cokellen: 推楼上的感想XD 02/05 22:24
13F:→ MOONRAKER: 好啊 你K某身体好不蛋疼 那你K某有解释到他的问题吗 02/06 22:18
14F:→ MOONRAKER: 本人起码指出他这样写不合DOM 往後迟早会有相容问题 02/06 22:19
15F:→ MOONRAKER: 而且本人的确看不爽这种echo到底的写法 事实上本人认为 02/06 22:19
16F:→ MOONRAKER: code最起码要把php和html适当的区分 不然看都难过 02/06 22:20
17F:→ MOONRAKER: 你K某有问题何不检举 我们来看看往後是你或我较疼 02/06 22:21
18F:→ shadowjohn: 二位都冷静冷静,以和为贵 02/07 20:12
19F:嘘 KawasumiMai: 这口气从VB版就死性不改,学术界就是充满这种口吻才 02/08 16:52
20F:→ KawasumiMai: 难以承先启後,老娘没览趴没你那问题,不然想怎样? 02/08 16:52
21F:推 wall: 重点是这写法无影响效能?若没有,coding style自己看爽就好 02/12 16:36