2013-11-26 58 views
0

我想使用jquery對話框,但我不斷收到此錯誤。無法讀取屬性'1'的空錯誤jqueryui

股利我使用的對話框:

<div id="save-dialog" title="Save"> 
    <p>Is this a tipo or a new patch? Leave blank if its a patch</p> 
    <p>Enter patch like this:"CB 1"</p> 
    <form> 
    <fieldset> 
    <input type="text" id="patch" value=""/> 
    </fieldset> 
    </form> 
</div> 

完全JS:

function savex(name){ 
    var desc = jQuery('input#'+name).val(); 
    var id = "<?php echo $_GET[id]; ?>"; 
    var patch = jQuery("#patch").val(); 
    jQuery("#save-dialog").dialog({ 
     autoOpen:false, 
     height:300, 
     width:300, 
     modal:true, 
     buttons: { 
      "Saving": function(){ 

       jQuery.ajax({ 
        url: 'editcontentheroes.php', 
        type: 'post', 
        data: 'id='+id+'&desc='+desc+'&name='+name+'&patch='+patch, 
        always: function(output) 
        { 
         history.go(0); 
        } 
       }); 
      }, 
      Cancel: function(){ 
       jQuery(this).dialog("close"); 
      } 
     } 
    }); 
} 

功能savex是由一個按鈕調用。試圖檢查一些空變量,但沒有發現任何問題。

編輯:標題的錯誤,我得到

EDIT2:我使用WordPress的

+1

什麼錯誤?您的標題是錯誤消息嗎? – adeneo

+0

您的錯誤不存在。 –

+0

標題是錯誤信息 – thenewseattle

回答

0

一個問題是你引用「這個」申報「取消」功能,內試圖訪問'dialog'元素,但是,在該函數範圍內的'this'實際上引用了該函數本身,而不是父元素'jQuery(「#save-dialog」)'。

你可能想改變...

Cancel: function(){ 
      jQuery(this).dialog("close"); 
     } 

到...

Cancel: function(){ 
      jQuery(this).parent.dialog("close"); 
     } 

如果不能修復,那麼你將要逐步完成的每一個可調試線'保存'功能。

+0

非常感謝。但我仍然收到相同的錯誤消息。 –

+0

@CristianoMarques你可以在小提琴中複製你的錯誤。 http://jsfiddle.net/78rbp/ – PSL

+0

如果這不是解決方法,那麼您將需要逐步執行「Saving」功能的每個可調試行。 –

相關問題