如何使用jQuery设置文本输入的值,使其';是在表单中添加到html的吗?

如何使用jQuery设置文本输入的值,使其';是在表单中添加到html的吗?,jquery,class,input,Jquery,Class,Input,我的边栏中有一个表单,它是Wordpress插件的一部分,我不确定生成表单的PHP代码驻留在哪里,因此我想使用jQuery向文本输入添加一个类和一个值。到目前为止,我已经: $j('body').ready(function() { $j('form#searchform').find(':input#s').addClass('default-value'); $j('form#searchform').find(':input#s').val('enter search he

我的边栏中有一个表单,它是Wordpress插件的一部分,我不确定生成表单的PHP代码驻留在哪里,因此我想使用jQuery向文本输入添加一个类和一个值。到目前为止,我已经:

$j('body').ready(function() {
    $j('form#searchform').find(':input#s').addClass('default-value');
    $j('form#searchform').find(':input#s').val('enter search here...');
});
该类已成功添加到html中,但尽管值显示在文本输入中,但未添加到html中,即在标记中,这需要我的默认值脚本才能工作。所以,我想知道是否有一种方法可以在线添加值

默认值脚本

  $j('.default-value').each(function() {
      var default_value = $j(this).val();
      $j(this).css('color', '#837D73'); // this could be in the style sheet instead
      $j(this).focus(function() {
          if(this.value == default_value) {
              this.value = '';
              $j(this).css('color', 'black');
          }
      });
      $j(this).blur(function() {
          if(this.value == '') {
              $j(this).css('color', '#837D73');
              this.value = default_value;
          }
      });
  });

你的代码应该正常工作。只需确保添加类名即可

注意

var default_value = this.value; //<-do it like this instead

你的代码应该正常工作。只需确保添加类名即可

注意

var default_value = this.value; //<-do it like this instead

你不能用
$j('s')
而不是
$j('form#searchform')。查找(':input#s')
?您不应该有多个具有相同id的元素。当您说“在标记内”是什么意思?当您说它没有添加到html时,是指查看源代码时,还是检查元素时?谢谢您的评论。是的,
$j('s')
也可以工作。我的意思是,当我检查元素时,它没有显示设置的值。下面的答案是
$j('s')。attr('value','entresearch here…'),它现在以内联方式设置值。不确定删除它的原因。不需要过度指定ID,因为NNNN所说的ID必须是唯一的。所以
form#searchform
input#s
被过度指定了。你不能用
$j(''s')
代替
$j('form#searchform')。find(':input#s')
?您不应该有多个具有相同id的元素。当您说“在标记内”是什么意思?当您说它没有添加到html时,是指查看源代码时,还是检查元素时?谢谢您的评论。是的,
$j('s')
也可以工作。我的意思是,当我检查元素时,它没有显示设置的值。下面的答案是
$j('s')。attr('value','entresearch here…'),它现在以内联方式设置值。不确定删除它的原因。不需要过度指定ID,因为NNNN所说的ID必须是唯一的。所以
form#searchform
input#s
被过度指定。谢谢。我只能在检查元素时看到html,因为表单是由PHP脚本生成的,我不知道如何复制html。您可以在Ah的侧边栏顶部看到正在运行的表单。我看到您正在尝试执行的操作,“输入占位符”,然后让我输入我的代码。我刚刚计算出将默认值脚本包装在
$j('body')。就绪(function(){
是问题所在。当我使用jQuery设置值和类时,我需要添加此项。这两种方法,即
.attr('value','enter search here…')
.val()
now work.Thank.我只能在检查元素时看到html,因为表单是由PHP脚本生成的,我不知道如何复制html。你可以在侧边栏顶部看到正在运行的表单,我知道你在做什么,“input placeholder”,那么让我结束我的代码。我刚刚计算出将默认值脚本包装在
$j('body')中。准备就绪(function(){
)是个问题。当我使用jQuery设置值和类时,我需要添加这个。这两种方法,即
.attr('value',enter search here…')
.val();
现在都起作用了。