我正在尝试使用jquery创建一个按钮。我使用以下代码
jquery('<button/>', {type:'button'}).text(name)但是,这在Safari、FF IE8中有效,但在IE7中无效
我尝试使用attr函数:
jquery('<button/>').attr('type','button').text(name)这也不起作用。
有什么办法能行得通吗?我想如果我不赋值类型,它将默认为button,但我宁愿这样做
谢谢你的帮忙
发布于 2010-05-10 04:42:59
试试这个:
var button = $('<button type="button"/>');现在,碰巧的是,在IE中,按钮的默认类型是"button“(至少7,对标准模式8不确定)。然而,上面的方法应该是可行的。我前几天才碰到这个。IE允许您在创建元素时在元素语法中提供类型,而且看起来jQuery几乎直接将其参数传递给这里的低级DOM。
哦,而且它在FF和Chrome上也运行得很好。
编辑-好吧,一年有多大的不同,嗯?现在,在jQuery 1.4.4或jQuery 1.5.x中,我根本不能让这种机制为我工作。好消息是JQuery1.6似乎可以按照OP希望的方式工作:通过以一种更普通的类似jQuery的方式设置“类型”。
然而,真正起作用的似乎是直接在元素上调用".setAttribute()“。因此:
var b = $('<button/>');
b[0].setAttribute('type', 'button');不抛出异常,并且正确地设置了"type“属性。(这本身就有点奇怪,因为微软明确地将"type“记录为只读。)1.6版本的变化似乎也是如此。以前,该库确实检查了"type“,并明确禁止在DOM中已有的元素上设置”type“,但会继续尝试将其设置为不在DOM中的元素的简单属性。现在,1.6代码调用".setAttribute()“来设置”类型“,这(我不知道是什么原因)工作得很好。
发布于 2010-05-10 03:52:20
您是否尝试过:
var $btn = $("<button>Button Text</button>");然后,您可以将其附加到文档中的任何位置。通常,您可以使用字符串文字以这种方式创建几乎任何DOM元素。
发布于 2010-09-30 03:28:51
我认为你想要使用这个$(':submit')
它会查找任何作为提交按钮的内容。请参阅:http://api.jquery.com/submit-selector/
https://stackoverflow.com/questions/2798949
复制相似问题