iT邦幫忙

0

javascript在google及firefox如何顯示??

netdoit 4 年前2391 瀏覽

請教各位前輩大大
我的後台有一個刪除功能當我使用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>

1 個回答

4
wiseguy
iT邦超人 1 級 ‧ 4 年前
最佳解答

夭壽 ... 這是 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 屬性。

netdoit iT邦新手 5 級 ‧ 4 年前 檢舉

感謝大師指導
因為這是以前委外寫的案子
寫的程式設計師也連絡不到了
因此只好自己想辦法瞎改
現在問題解決了
真的感謝您~

我要發表回答

立即登入回答