2013-06-28 34 views
0

我有一個HTML文件,在其中,我想編輯的字段。 以下是我的html代碼:javascript錯誤:ReferenceError:編輯未定義編輯(this);

<body> 
    <div class= "table"> 
    <div class = "thead"> 
    <div class = "tr"> 

    <div class = "td">ID</div> 
    <div class = "td">GROUP NAME</div> 
    <div class = "td">GROUP DESCRIPTION</div> 
    <div class = "td">IS ACTIVE</div> 
    <div class = "td"></div> 
    <div class = "td"></div> 
    </div> 
    </div> 

<div class= "tbody"> 
<form class = "tr"> 
    <div class = "td">1</div> 
    <div class = "td">hello</div> 
    <div class = "td">hwryou</div> 
    <div class = "td">y</div> 
    <div class = "td action" ><button type="button "onclick="edit(this);">edit</button>  </div> 
    <form> 
    </div> 
    </div> 
    </body> 

下面是我的javascript代碼:

<script language="javascript" type="text/javascript" src="serialize-0.2.min.js"> 

function edit(element){ 
    var tr = jQuery(element).parent().parent(); 
    if(!tr.hasClass("editing")) { 
      tr.addClass("editing"); 
      tr.find("DIV.td").each(function(){ 
        if(!jQuery(this).hasClass("action")){ 
          var value = jQuery(this).text(); 
          jQuery(this).text(""); 
          jQuery(this).append('<input type="text" value="'+value+'" />'); 
        } else { 
          jQuery(this).find("BUTTON").text("save"); 
        } 
      }); 
    } else { 
      tr.removeClass("editing"); 
      tr.find("DIV.td").each(function(){ 
        if(!jQuery(this).hasClass("action")){ 
          var value = jQuery(this).find("INPUT").val(); 
          jQuery(this).text(value); 
          jQuery(this).find("INPUT").remove(); 
        } else{ jQuery(this).find("BUTTON").text("edit"); 
        }}); } 
    }</script> 

同時創造出來說,當我點擊編輯按鈕,它顯示了引用錯誤編輯沒有定義這可能是什麼原因?

更新:

我有,就點擊保存按鈕,改變的內容應該被保存在database.How可以和我應該寫更新查詢的其他要求嗎?也讓上點擊刪除按鈕,更新命令應該run.HOw我可以做到這一點我需要一個刪除按鈕?/

+0

你是不是在這裏失蹤的空間'類型= 「按鈕」 的onclick = 「編輯(本);」'? – elclanrs

+0

沒有在實際的代碼中,空間在那裏。 –

回答

6

腳本可以內嵌或外置,它不能同時。

src屬性的存在導致腳本節點的文本節點孩子被忽略。

如果你想內聯和外部腳本,使用兩個腳本元素。

<script src="serialize-0.2.min.js"></script> 
<script> 
    function edit(element){ 
    // etc 
+0

我用這樣的,但它示出了錯誤:的ReferenceError:未定義的jQuery [打破該誤差] \t 變種TR = jQuery的(元件).parent()的父(); –

+1

您正在調用jQuery。您必須先包含帶'

-1
<script type="text/javascript" src="serialize-0.2.min.js"></script> 
<script type="text/javascript"> 
function edit(element){ 
    // Your Code 
} 
</script> 

試試這個。

+0

如果你已經解釋了爲什麼這是一個可接受的解決方案;) – TecHunter