2011-04-27 49 views
1

我在我的html中声明了一个iFrame,源代码是我的XQuery文件。在我的XQuery中,我定义了一个<div>,其中我还声明了一个名为“convert”的按钮。提交按钮在IE中不起作用

我XQuery的文件基本上是这样的(这是对的iFrame源)

return 
<div id="content"> 
<table> 
    .... 
    <tbody> 
    { 
    ... 
    <td> 
    <a id="{$t/@id}" 
     rel="nofollow" 
     target="_new" 
     name="{util:document-name($t)}:{util:node-id($t)}" 
     href= 
     "http://localhost:8080/exist/rest/db/motorola/xquery/toDita.xql?xml={ 
      util:document-name($t) 
     }&amp;xsl=mot2dita.xsl"> 
     <input type="submit" value="convert"/> 
    </a> 
    </td> 
    ... 
    } 
    </tbody> 
</table> 
</div> 

正如你可以看到,在TD,我宣布了一个名为“转换”按钮,并在“HREF”给出的链接。现在这个按钮完全在Firefox和Chrome(打开一个新窗口做任务),但在IE浏览器,点击它后,它只是没有做任何事情。

我不知道这是否浏览器问题或我的XQuery脚本有问题。预先感谢帮忙。

回答

4

<input>标签在<a>标签内无效。因此,XHTML代码无效,这将导致不一致的行为 - 某些浏览器比其他浏览器更好地补偿这种奇怪的情况。

建议您完全删除<input>,并使用CSS将<a>标记的样式设置为看起来像按钮,如果它只是您之后按钮的外观。

+0

或者使用'' – 2011-04-27 20:27:01

+0

有可能,但我怀疑这也将失败。如果''在这里不起作用,我希望''同样受到影响。这两个都不是有效的XHTML。 – CVM 2011-04-27 20:39:39

+0

对不起,我误解了你的答案。如果首先从锚标签中取出,则取决于OP实际尝试做什么。由于你的答案被接受,我猜你的权利... – 2011-04-27 20:45:23

1

除非你在表单内,否则不会提交任何内容......绝对不是A标签。

我更喜欢用JQuery UI的按钮功能来完成这些操作。它可以获得所需的行为,并且可以逐步增强和测试,以处理全部浏览器,并且可以使用href链接,按钮元素或input type = submit元素来完成。另外,造型看起来很棒,瞬间即可。

这里有一个快速啧啧:http://www.filamentgroup.com/lab/styling_buttons_and_toolbars_with_the_jquery_ui_css_framework/