某处我在btn.attr()中犯了一个错误但找不到它。或者显然它不像我想的那样工作,所以现在我很困惑。我可以在javascript中用“with”来做,但我也想学习如何在jquery中做到这一点。所以这是代码:
function setattr(id, value) {
var btn = document.createElement('input');
btn.setAttribute('type', 'button');
btn.attr({
id: id,
class: "btnclass",
value: "value"
});};
我可以用某种方式使用$(这个)吗?
答案 0 :(得分:8)
这是正确的方法,但
"value"
未关闭)btn
是一个DOM元素,而不是jQuery class
是保留字这样做:
$(btn).attr({
id: id,
"class": "btnclass",
value: "value"
});
请注意,应该通过查看浏览器的控制台来发现这些错误。
答案 1 :(得分:0)
而不是:
var btn = document.createElement('input');
...
你可以简单地说:
var btn = $('<input type="button" id="'+id+'" class="btnclass" value="value"/>');
然后,您可以使用.appendTo()
,.prependTo()
或jQuery提供的各种其他方法将此内容分配给您的页面。
答案 2 :(得分:0)
使用jQuery,你可以这样做:
function setattr(id, value) {
var $btn = $('<input/>', {
id: id,
class: "btnclass",
type: 'button',
value: value
});
}
请不要忘记将新的btn
添加到element
。
答案 3 :(得分:0)
试试 Demo
function setattr(id, value) {
var btn = document.createElement('input');
$(btn).attr({
type: 'button',
id: id,
class: "btnclass",
value: value
});
//bind event
$(btn).on('click', function(){
alert('work....');
});
$('body').append(btn);
};