Jquery mobile 更改指向弹出id jquery Mobile的href属性
如何使用jquery更改充当jquery移动弹出窗口的div的id以及指向弹出窗口的锚点的href? 在我的webapp中,我有一个锚,当点击它时,会弹出一个jquery移动弹出div,我正在动态插入它。在webapp的任何实例中,我都不知道这段代码会被插入多少次。因此,我的理解是,我需要能够动态地为jquery mobile popup div创建一个唯一的id,并设置我的popup图标的href 我目前没有成功地动态更改id和href。我创建了以下测试() 以下是我的html示例:Jquery mobile 更改指向弹出id jquery Mobile的href属性,jquery-mobile,popup,href,Jquery Mobile,Popup,Href,如何使用jquery更改充当jquery移动弹出窗口的div的id以及指向弹出窗口的锚点的href? 在我的webapp中,我有一个锚,当点击它时,会弹出一个jquery移动弹出div,我正在动态插入它。在webapp的任何实例中,我都不知道这段代码会被插入多少次。因此,我的理解是,我需要能够动态地为jquery mobile popup div创建一个唯一的id,并设置我的popup图标的href 我目前没有成功地动态更改id和href。我创建了以下测试() 以下是我的html示例: <
<div class="phone1">
<p class="textLeft"> <strong>Number: </strong><span>(555)555-5555</span>
<a href="#myPopup" data-rel="popup" data-transition="pop" class="my-tooltip-btn ui-corner-all ui-btn ui-alt-icon ui-nodisc-icon ui-btn-inline ui-icon-info ui-btn-icon-notext ui-corner-all" title="Learn more">Learn more</a>
</p>
<div id="myPopup" data-role="popup" class="ui-content" data-theme="a" style="max-width:350px;">
<p class="flagText">This number has been flagged as incorrect</p>
</div>
</div>
<a href="#" class="ui-btn ui-btn-inline ui-btn ui-mini ui-corner-all ui-shadow" id="changeButton">Change href property</a>
提前感谢您的帮助 由于您的定位点不是.phone1的直接子项而是孙子,因此>选择器不起作用。href还需要#符号: 从技术上讲,您还应该使用prop更新id:
$('#myPopup').prop('id', 'myNewPopup');
更新
你确定你需要这样做吗。在第一次动态插入弹出窗口后,您可以通过测试它是否存在于DOM中来更新它:
if ($("#myPopup").length > 0){
//update
} else {
//create
}
谢谢你。我不确定我是否需要“#”并且我的测试选择器是错误的(令人尴尬)。在我修复了“#”之后,出现了一个新问题,jqm以某种方式重新排序DOM,因此我的选择器指向了由jqm创建的占位符div,而不是我打算修改的实际弹出div。当我试图更改$('selector').prop('id','myNewPopup')时,我更改的是弹出式占位符的id,而不是弹出式占位符。将我的选择器从$(.myClass>div)更改为在我插入的html中编码的$('#myPopup'),修复了该行为。非常感谢你。
$('#myPopup').prop('id', 'myNewPopup');
if ($("#myPopup").length > 0){
//update
} else {
//create
}