2014-02-19 29 views
0

我有这行代码,在localDB准备就绪时通过JS插入。 将jquery应用于用javascript插入的代码

// 
    boxOne = document.getElementById("box1"); 
    content = '<button data-icon="delete">Delete</button>'; 
    boxOne.innerHTML = content; 
    // 

此代码的问题在于,mobilejquery应该读取data-icon="delete"并添加该类的图标以显示,但不会这样做。 我可以简单地通过我自己手动添加类,但是当我尝试将验证库应用于由JS插入的表单时,验证将无法正常工作,这也会造成我的麻烦。 那么我怎样才能让jquery &我使用的任何库读取这个插入的JS代码。

+0

boxone.innerHTML = content? – Konza

+0

你正在使用哪个jqm版本? – Omar

回答

0

其他答案显示如何添加按钮,但不知道如何让jQuery Mobile来增强它。

如果使用JQM 1.4,调用enhanceWithin()在容器上:

var content = '<button data-icon="delete">Delete</button>'; 
$("#box1").append(content).enhanceWithin(); 

如果您正在使用1.3,按钮对象调用button()

var content = '<button data-icon="delete">Delete</button>'; 
$("#box1").append(content); 
$("#box1 button").button(); 

注:在我的例子中,我使用append()添加内容,如果您愿意,仍然可以使用html()

+0

这解决了它非常感谢 $("#box1").html(content).enhanceWithin(); 多数民众赞成它没有形成我我正在使用此代码内循环BTW – Kash

1

我想你的意思是把content放在boxOne之内。因为它代表你试图插入一个DOM对象(本身)为innerHTML

boxOne.innerHTML = content; 

JSFiddle

或者,因为它提供给你,只是使用jQuery:

$btn = $('<button/>',{text:'Delete','data-icon':'delete'}); 
$('#box1').html($btn); 

JSFiddle

0

使用jQuery,您可以使用html()

$('#box1').html('<button data-icon="delete">Delete</button>');