jQuery如果Url字符串存在,则将其作为href添加到另一个元素

时间:2014-11-27 04:51:25

标签: jquery

使用我的CMS,我可以为我的活动创建一些自定义字段。我想要两个自定义字段,注册状态注册网址

注册状态字段是具有两个值的多选单选按钮,立即注册和即将推出。注册网址只是一个输入注册链接的文本字段。

我可以在我的活动中输出这两个字段,但不是仅显示文字,而是将“立即注册”与注册网址超链接,但我希望只有在“立即注册”时才会发生这种情况。 #39;被选为状态。

这是我的标记输出的样子:

<div class="RegStatus">Register Now</div>
<div class="RegUrl">https://www.someRegistrationLink.com</div>

如果活动的状态即将到来并且未提供注册链接,那么它将如下所示:

<div class="RegStatus">Coming Soon</div>
<div class="RegUrl"></div>

上面的两个元素可以被CSS隐藏,我也有这个元素,它将被jQuery更改:

<div class="RegBox"><a class="RegButton"></a></div>

现在,我有这个场景:

var getRegStatus = $('.RegStatus').text();
var getRegUrl = $('.RegUrl').text();

if (getRegStatus === 'Register Now') {
$('.RegBox a.RegButton').text('Register Now').attr('href', getRegUrl);
}

它可以正常工作但很容易出错,就像用户选择立即注册状态并忘记提供注册URL一样,反之亦然。在执行语句之前是否可以确保满足两个条件?像IF这样的状态是&#34;立即注册&#34;如果提供了网址,则执行此操作。

1 个答案:

答案 0 :(得分:0)

if (getRegStatus === 'Register Now')替换为            if (getRegStatus === 'Register Now' && getRegUrl.length)