請教各位前輩大大
我的後台有一個刪除功能當我使用ie8瀏覽器選取時都會出現警告視窗問我是否確定刪除
但是若使用ie9或firxfox或google瀏覽器時就完全沒反應如圖片範例
所以我在想是否我以下的java程式有那個地方要加什麼或是有錯誤呢?懇請協助指導,感激不盡!
<script language="JavaScript" type="text/JavaScript">
<!--
function tformdel()
{
if(!document.all.tform("adm_no[]") || document.all.tform("adm_no[]").length==0) return;
j=0;
if(!document.all.tform("adm_no[]").length) {
if(document.all.tform("adm_no[]").checked)
j++;
} else {
for(i=0;i<document.all.tform("adm_no[]").length;i++){
if(document.all.tform("adm_no[]")[i].checked)
j++;
}
}
if(j==0){
alert("請先勾選要刪除的資料!!");
return;
}
if(confirm("確定刪除所選的資料!?")){
tform.action="delete.php";
tform.submit();
}
}
function usel(){
//變數checkItem為checkbox的集合
var checkItem = document.getElementsByName("adm_no[]");
for(var i=0;i<checkItem.length;i++){
checkItem[i].checked=!checkItem[i].checked;
}
}
//-->
</script>
夭壽 ... 這是 IE5 以前的語法,好令人懷念的 document.all 喔 ....
低於 30 歲的邦友應該看不懂這種 javascript 方言 ...
所以囉~ ie9或firxfox或google 也看不懂,是完全正常的。
因為你沒貼出 html 內容,所以我只能猜測你的 <form > 是寫成 <form name="adm_no[]" ...> 。如果沒錯的話,請加上 id="adm_no" 變成 <form id="adm_no" name="adm_no[]" ...>。然後把程式裡的 document.all.tform("adm_no[]") 改成 document.getElementById("adm_no") 應該就可以了。
document.getElementsByName("adm_no[]") 這個也寫錯了。
getElementsByName() 是以 html 的標籤搜尋。html 裡面應該沒有一種標籤是叫 <adm_no[]></adm_no[]> 的吧?你要找的應該是 document.getElementsByName("input") 才對吧?不過因為所有的 type 都會被找到,因此必須確定 checkItem[i].type=='checkbox' 才會有 checked 屬性。