Re: [問題] 送出表單的問題~~~

看板Ajax作者 (蔥頭)時間16年前 (2009/10/05 22:09), 編輯推噓4(404)
留言8則, 3人參與, 最新討論串2/2 (看更多)
這是我的程式碼 ~~ 單獨執行可以 但加到我這檔案就會出現錯誤(js的錯誤) <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "" rel="nofollow">http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="" rel="nofollow">http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>活動後端管理</title> <style type="text/css"> #td { font-size: 10pt; } </style> <script> function check(){//會發生error if(window.confirm("是否確定刪除此筆資料???")==true){ form1.submit(); }//這樣每個form的名字都一樣可以嗎?? } function checkend(){ if(window.confirm("是否確定要結束該項活動???")==true){ form1.submit(); }//這樣每個form的名字都一樣可以嗎?? } </script> </head> <body> <form action="actshow.php" method="get" name="kkman"> <table align="center"> <select name="choice"> <option value='all'>全部 <option value='name'>活動名稱 <option value='time'>活動日期 </select> <input type="text" name="key" > <input type="submit" name="search" value="送出查詢"> </table> </form> <?php include_once("includ.php"); if(isset($_GET["search"])==true) { $key=$_GET["key"]; $choice=$_GET["choice"]; if($choice=='name') $sql="select * from act where actName LIKE '%{$key}%'";//關鍵字搜尋 elseif($choice=='all') $sql="select * from act order by actTime desc";//排序透過活動日期來排序 } else $sql="select * from act order by actTime desc";//排序透過活動日期來排序 $result=mysql_query($sql,$link) or exit("<script>window.alert('無此筆資料,請重新輸入')</script>"); ?> <table width="450" border="0" align="center" id="td"> <tr> <td bgcolor="#009933" align="center"><font color="#FFFFFF">編號</font></td> <td bgcolor="#009933" align="center"><font color="#FFFFFF">活動日期</font></td> <td bgcolor="#009933" align="center"><font color="#FFFFFF">標題</font></td> <td bgcolor="#009933" align="center"><font color="#FFFFFF">修改</font></td> <td bgcolor="#009933" align="center"><font color="#FFFFFF">刪除</font></td> <td bgcolor="#009933" align="center"><font color="#FFFFFF">結束活動</font></td> </tr> <?php for($i=0;$i<mysql_num_rows($result);$i++) { echo "<form action='actshowcheck.php' method='get' name='form1'>";//這樣設計為每個<tr>被一個form包 $row=mysql_fetch_assoc($result);//提取紀錄指標所指向的位置放到row陣列位置,放完後紀錄指標自動往下指ㄧ筆 echo "<tr>"; echo "<td bgcolor='#EEEEEE' align='center'>".$row["actNo"]."</td>"; echo "<td bgcolor='#EEEEEE' align='center'>".$row["actTime"]."</td>"; ?> <td bgcolor='#EEEEEE' align='center'><a href=frontlook.php?psn=<?php echo $row["actNo"]; ?>><?php echo $row["actName"]; ?></a></td> <td bgcolor='#EEEEEE' align='center'><input type="submit" value="修改" name="update"></td> <td bgcolor='#EEEEEE' align='center'><input type="button" value="刪除" name="delete" onclick="check();"></td> <?php if($row["end"]!="end"){ echo "<td bgcolor='#EEEEEE' align='center'><input type='button' value='確定' name='end' onclick='checkend();'></td>";//type要設定為button 不然不管判斷設定什麼條件 form都會送出 }else{ echo "<td bgcolor='#EEEEEE' align='center'></td>";} echo "</tr>"; echo "<input type='hidden' name='hiddno' value='{$row['actNo']}'>"; echo "</form>"; } ?> </table> </body> </html> -- 感謝大家的推文 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.167.200.87

10/06 07:39, , 1F
你每個name都是form1,要用form1[index]去指定要對哪個作用
10/06 07:39, 1F

10/06 07:41, , 2F
試試呼叫check()的時候傳this過去,會比較方便處理
10/06 07:41, 2F

10/06 08:08, , 3F
不好意思如果是this不是只 input嗎?? 如果要用form
10/06 08:08, 3F

10/06 08:08, , 4F
要怎麼寫?? 感謝~~
10/06 08:08, 4F

10/06 08:28, , 5F
用this是比較懶惰的解法啦~ 用this.parentNode 看幾層就幾個
10/06 08:28, 5F

10/06 08:29, , 6F
去指到form為止,或者你在php加個計數丟index過去,也滿省事
10/06 08:29, 6F

10/06 19:34, , 7F
就傳this.form就是指到整個form了
10/06 19:34, 7F

10/06 20:27, , 8F
原來還可以這樣用啊!!(驚)
10/06 20:27, 8F
文章代碼(AID): #1AoVuYrm (Ajax)
文章代碼(AID): #1AoVuYrm (Ajax)