Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如果值标签是什么,则添加html_Javascript_Jquery_Html_Css - Fatal编程技术网

Javascript 如果值标签是什么,则添加html

Javascript 如果值标签是什么,则添加html,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我有一个登录页面,我想自定义它。。。 该页面是由其他代码创建的,因此我希望通过jquery添加外部文件进行自定义。 在这种情况下,我想在登录表单之前添加一个字符串,因此在值为username的标签之前 但是不起作用 if($('label').val()== "Username*"){ $(this).before('<h1>Effettua il login:</hi><br>'); } if($('label').v

我有一个登录页面,我想自定义它。。。 该页面是由其他代码创建的,因此我希望通过jquery添加外部文件进行自定义。 在这种情况下,我想在登录表单之前添加一个字符串,因此在值为username的标签之前

但是不起作用

    if($('label').val()== "Username*"){
         $(this).before('<h1>Effettua il login:</hi><br>');
      }
if($('label').val()=“Username*”){
$(this.before('Effettua il login:
'); }
这是JSFIDLE代码:

您可以通过其for属性选择标签

var linkelimina=self.location.href;
$(文档).ready(函数(){
var link=self.location.href;
如果(link==linkelimina | | link==”http://www.webisite.com/user“||链接=”http://www.website.com/user/password") {
$('.tabs').css('display','none');
$('.description').css('display','none');
$('label[for=“edit name”]”)。在('Effettua il login:
')之前; } });


  • 用户名* 输入您的网站用户名。 密码* 输入用户名随附的密码。
    参见JSFIDLE:

    我将您的代码替换为

    $("label:contains('Username')").before('<h1>Effettua il login:</hi><br>');
    
    $(“标签:包含('Username'))。在('Effettua il login:
    ')之前;
    编辑

    $("label[for='edit-name']").before('<h1>Effettua il login:</hi><br>');
    
    $(“label[for='edit-name'])。在('Effettua il login:
    ')之前;

    也可以正常工作,只需将选择器替换为包含“Username*”的标签的唯一项即可。

    要按文本对其进行过滤,您可以使用:

    $("label").filter(function(){
        return $.trim($(this).text()) === "Username"; // trimming text because you have extra space
    }).before('<h1>Effettua il login:</hi><br>');
    
    $(“标签”).filter(函数(){
    返回$.trim($(this).text())===“Username”;//由于有额外的空间,所以修剪文本
    }).before('Effettua il login:
    ');
    我也试过。。。但是什么都没有:(将您的代码替换为:
    $(“标签:包含('Username')))。在('Effettua il login:
    '))之前;
    标签没有值属性/属性。它可以,但对于W3C来说是无效的spec@Arg0n写一个答案!否,因为有两个相同的标签属性。。。。是否可以通过文本选择?@user3162975我看不到。。。其中一个有edit name的值,另一个edit pass使它们可以单独选择,但我将扩展答案以包括文本。这将匹配
    任何用户名和whatelse
    。并非总是预期的行为。更好的方法是过滤与字符串完全匹配的标签文本或某些特定属性,如
    data-*
    one,然后使用另一个选择器,如
    $(“label[for='edit-name'])是的,我觉得更好