首页 > 解决方案 > 按钮内的 window.location.href 复制它

问题描述

请帮我window.location.href从按钮中提取...。单击功能不起作用...只是将我发送到主页并且什么都不做...我想在 iframe 中找到它,为什么会有(#xx)

<button type="button" value="Upgrade to level 2" class="green build" onclick="window.location.href = 'dorf2.php?а=32&amp;c=Wra'; return false;">
    <div class="button-container addHoverClick ">
        <div class="button-background">
            <div class="buttonStart">
                <div class="buttonEnd">
                    <div class="buttonMiddle"></div>
                </div>
            </div>
        </div>
        <div class="button-content">Upgrade to level 2</div>
    </div>
</button>

我认为得到的方式是

var buttonLink = $('#xx').contents().find('button.green.build').attr('href');
//or
var buttonLink = $('#xx').contents().find('button.green.build').text().attr('href');

.attr('href')在这里不起作用,因为window.location.href我认为它不一样....请帮我在属性内复制它

标签: jquerybuttoncopyvarlocation-href

解决方案


1)href是一个属性,它没有在按钮中设置,您可以通过编写自定义属性来添加它,例如“data-href ='yourUrl'”

2)通过jQuery,您可以通过很多选择器访问按钮,您可以在此处阅读有关选择器的信息,通过选择器您可以这样做:

$('#buttonId').data('href'); OR $('#buttonId').attr('data-href');

3)最后你可以通过这段代码完成你的工作:

$('#buttonId').click(function(){window.location.href = $(this).data('href');});

4)关于从 ifream 读取内容我认为您正在做的事情受同源政策的约束。读这个

5)如果您忽略域中的策略和 ifream ...您可以通过$("#iFrame").contents().find("#buttonId")....etc 继续工作...不要忘记(同源策略)


推荐阅读