gpt4 book ai didi

javascript - 当值未定义时,短路 window.location 而不触发刷新

转载 作者:行者123 更新时间:2023-12-03 04:38:01 24 4
gpt4 key购买 nike

我正在向表行添加一个单击处理程序,但由于我的脚本也可能对不存在 href 属性的表运行,因此我想确保它不会中断。我想使用短路来捕获这两种情况:

// clicking on an entire row changes the current url
$("tbody tr").click(function() {
debugger;
window.location = $(this).attr("href") || void(0);
});

问题是,如果 href 属性未定义(因此:false),请将 window.location 设置为 void (0) 导致页面刷新。

有没有办法在不使用三元运算符或 if/then/else 语句的情况下执行此操作?

最佳答案

因此,如果 i 没有该属性,请不要选择它。

$("tbody tr[href]").click(function() {
//if ($(this).attr("href").length)
window.location = $(this).attr("href");
});

或者不调用它

$("tbody tr").click(function() {
var href = $(this).attr("href");
if (href) {
window.location = href;
}
});

我个人会使用数据属性而不是 href。

<tr data-href="//example.com">

然后使用 data() 来引用它

var href = $(this).data("href")

关于javascript - 当值未定义时,短路 window.location 而不触发刷新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43207210/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com