2014-03-31 30 views
0

此代码打开一个模式框。但我的问题是,当我试图打开它与我的编辑目的模式框不工作的不同的ID。我想添加这个代码<input type="button" value="Edit Item" id="edit">使用另一个ID打开一个模式框。但为什么不工作? 第一格,形式,表,第二个div:打开模式框不起作用

<input type="button" value="Add New Item" id="add_new"> 

<div class="entry-form"> 
<form name="userinfo" id="userinfo"> 
    <table width="100%" border="0" cellpadding="4" cellspacing="0"> 
    <tr> 
    <td colspan="2" align="right"><a href="#" id="close">Close</a></td> 
    </tr> 
    <tr> 
    <td>Item</td> 
    <td><input type="text" name="items" id="items" value="" class="inputs" autocomplete="off"></td> 
    </tr> 
</div> 

<script> 
$(document).ready(function(){ 

    $("#add_new").click(function(){ 
     $(".entry-form").fadeIn("fast");  
    }); 

    $("#close").click(function(){ 
     $(".entry-form").fadeOut("fast"); 
    }); 
}); 
</script> 
+0

无效的标记,无论是形式,表或包装DIV被关闭。 – adeneo

+0

@adeneo为什么关闭? – user3462269

回答

0

您还必须将#edit添加到click事件处理程序中,如您在this jsFiddle中所看到的那样。

<input type="button" value="Add New Item" id="add_new"> 
<input type="button" value="Edit Item" id="edit"> 

<div class="entry-form"> 
<form name="userinfo" id="userinfo"> 
    <table width="100%" border="0" cellpadding="4" cellspacing="0"> 
    <tr> 
     <td colspan="2" align="right"><a href="#" id="close">Close</a></td> 
    </tr> 
    <tr> 
    <td>Item</td> 
    <td><input type="text" name="items" id="items" value="" class="inputs" autocomplete="off"></td> 
    </tr> 
<div> 

而JavaScript:

$(document).ready(function(){ 

     $("#add_new, #edit").click(function(){ 
      $(".entry-form").fadeIn("fast"); 
     }); 

     $("#close").click(function(){ 
      $(".entry-form").fadeOut("fast"); 
     }); 
    }); 
+0

谢谢:)我有与此有关的另一个问题。我会发布另一个问题,你能帮助我吗? – user3462269

0

首先,你还没有添加结束标记以下任何在你的HTML被打破。

其次,您的脚本应具有type="text/javascript"属性。

+0

在这种情况下,脚本中的类型不是必需的 –

+0

我看到一些非现代化的HTML,它是OP给出的表结构,所以这不是HTML5代码片段。根据W3C规范,我认为HTML5以前版本需要type =“text/javascript”。 –

相关问题