再会。有一组特定的输入data-link,可以用多种形式指定。参见示例:
var currentUrl = window.location.href;
$(".options-list .field").each(function() {
var radio = $(this).find(".radio");
var link = $(radio).data("link");
if (link == currentUrl) {
$(this)
.find(".radio")
.prop("checked", true);
}
if (link != "") {
$(radio).attr("onclick", "window.location='" + link + "'");
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="options-list" id="options-28-list">
<div class="field">
<input data-link="/alfa-living-room-set-redeyef-brown.html" class="radio" name="options[28]" id="options_28_2" value="43" data-selector="options[28]" type="radio">
<label class="label" for="options_28_2"><span>Value 1</span></label>
</div>
<div class="field">
<input data-link="https://example.com/alfa-living-room-set-redeyef-brown.html" class="radio" name="options[28]" id="options_28_3" value="44" data-selector="options[28]" type="radio">
<label class="label" for="options_28_3"><span>Value 2</span></label>
</div>
<div class="field">
<input data-link="" class="radio" name="options[28]" id="options_28_4" value="45" data-selector="options[28]" type="radio">
<label class="label" for="options_28_4"><span>Value 3</span></label>
</div>
</div>
如您所见,可以设置属性:
- /alfa-living-room-set-redeyef-brown.html
- https://example.com/alfa-living-room-set-redeyef-brown.html
- 空的
我需要,如果有一个填充属性,当单击时,会发生到给定页面的转换,并且如果当前域与指定的链接匹配,则输入会得到一个复选框。
所以问题是:
- 如何处理某些链接中缺少的域?毕竟,如果链接是
/test.html,那么过渡将无处可去。复选框也是如此。指定的链接将与当前地址不匹配。 - 导航到另一个页面时添加属性的解决方案是否正确选择?还是通过单独编写函数会更好
.click?一般情况下,能不能把代码写的更准确一些?
谢谢!
location.origin为所有此类输入添加单个事件侦听器会更有效 - 但由于 它们很少,它会掉下来
onclick。