首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Jquery .after函数

Jquery .after函数
EN

Stack Overflow用户
提问于 2014-04-14 05:33:23
回答 1查看 47关注 0票数 1

下面的代码来自.aspx文件

代码语言:javascript
复制
<div class="clearfix" style="margin-bottom: 10px">
   <span class="spinfo">Name:</span>
   <div>
        <asp:TextBox runat="server" ID="txtname"></asp:TextBox>
    </div>
</div>

下面的代码来自.css文件:

代码语言:javascript
复制
.spana1{
    background-position: left center;
    color: #c80000;
    background-image: url('symbol-error.png');
    background-repeat: no-repeat;
    padding-left: 17px; 
}

下面的代码来自.js文件

代码语言:javascript
复制
var error = true;    
$(document).ready(function () {
    $("#txtname").focusout(function () {
        error = false;
        $(".spana1").remove();
        if ($("#txtname").val() == "") {
            $("#txtname").after("<span class='spana1'>Please Enter your Name</span>");
            error = true;
        }
    });
});

#txtname的内容等于null时失去焦点时,应该调用这个raw:$("#txtname").after("<span class='spana1'>Please Enter your Name</span>");

但结果是:

但我用的是.after。当我尝试时,.before的结果是相同的。

可能是什么原因?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-04-14 05:36:10

尝试使用floating of input element CSS

代码语言:javascript
复制
#txtname{
   float:left;
}

还可以使用$(this),而不是重复使用相同的选择器,

代码语言:javascript
复制
$(document).ready(function () {
    $("#txtname").focusout(function () {
        error = false;
        $(".spana1").remove();
        if (this.value == "") { // you can use $(this).val() also
            $(this).after("<span class='spana1'>Please Enter your Name</span>");
            error = true;
        }
    });
});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23052633

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档