我有一个<li>
元素,其中从控制器添加文本。如果文本是:“电子邮件已存在”。我想追加一个链接,我不想附加任何东西。
我在jQuery中有以下功能,但它不起作用:
if ($("#validat ul li").indexOf("Email") >= 0)
{
$("#validat ul li").append("<a href='@Url.Action("ForgotPassword","Auth")'>Forgot password?</a>");
}
我缺少什么?
答案 0 :(得分:0)
使用.each()
方法。详细信息在Snippet中进行了注释。
<强>段强>
/* Each list item do this... */
$('#validat ul li').each(function() {
/* If the <li> has text content of
|| "You got Mail"...
*/
if ($(this).text() === "You got Mail") {
/* append() a link within that <li> is
|| the last child
*/
$(this).append("<a href='#somewhere'>Click Here</a>");
}
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="validat">
<ul>
<li>You got Mail</li>
<li>You got Mail</li>
<li>You got Mail</li>
<li></li>
<li>You got Mail</li>
<li>You got Mail</li>
<li></li>
<li>You got Mail</li>
<li>You got Mail</li>
<li>You got Mail</li>
<li></li>
<li>You got Mail</li>
<li></li>
<li></li>
<li>You got Mail</li>
<li>You got Mail</li>
<li></li>
<li></li>
<li></li>
<li></li>
<li>You got Mail</li>
<li>You got Mail</li>
<li></li>
<li>You got Mail</li>
</ul>
&#13;