Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/413.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 Textarea默认文本为';不能正确对齐_Javascript_Textarea_Alignment - Fatal编程技术网

Javascript Textarea默认文本为';不能正确对齐

Javascript Textarea默认文本为';不能正确对齐,javascript,textarea,alignment,Javascript,Textarea,Alignment,我在下面有一个文本区。当我运行代码时,刷新时应该在textarea中的文本不是左对齐的,而是在顶部。这使我无法使用javascript onfocus和onblur事件,因为当我比较框中的字符串时,有额外的空格使其与“回答此问题…”不同有没有一种方法可以使这个默认文本左对齐并位于文本区域的顶部,而不需要任何额外的空格,我认为这是从php生成的 代码: <textarea id ='box' autocomplete='off'> <?php if (!$_SESSI

我在下面有一个文本区。当我运行代码时,刷新时应该在textarea中的文本不是左对齐的,而是在顶部。这使我无法使用javascript onfocus和onblur事件,因为当我比较框中的字符串时,有额外的空格使其与“回答此问题…”不同有没有一种方法可以使这个默认文本左对齐并位于文本区域的顶部,而不需要任何额外的空格,我认为这是从php生成的

代码:

<textarea id ='box' autocomplete='off'> 
<?php 
    if (!$_SESSION['username']){
      echo "readonly='readonly'";
    }
?>
>
<?php 
    if (!$_SESSION['username']){ 
      echo "Login to answer...";
    } 
    else {
      echo "Answer this problem...";
}
?>
</textarea>

嗯,在
textarea
start标记和PHP
echo
内容之间有很多空白

<textarea id ='box' autocomplete='off' <?php 
      if (!$_SESSION['username']){
           echo "readonly='readonly'";
      }
  ?> ><?php 
      if (!$_SESSION['username']){ 
          echo "Login to answer...";
      } else {
          echo "Answer this problem...";
      }
    ?></textarea>

文本区域中的所有空白实际上都呈现为内容(有点像标记中的内容)

<textarea id ='box' autocomplete='off' 
                <?php 
                    if (!$_SESSION['username']){
                        echo "readonly='readonly'";
                    }
                ?>
            ><?php 
                    if (!$_SESSION['username']){ 
                        echo "Login to answer...";
                    } 
                    else {
                        echo "Answer this problem...";
                    }
                ?></textarea>
因此,为避免出现这种情况,只需在关闭后直接启动动态内容:


这是因为您要从新行和选项卡中添加额外的空间。相反,您希望这样:

if($.trim($('#box').val()) == 'Answer this problem...') { /* do something */ }

相反,您可以在将文本区域的值与“回答此问题…”进行比较之前对其进行修剪

比如说

<textarea id ='box' autocomplete='off' 
                    <?php 
                        if (!$_SESSION['username']){
                            echo "readonly='readonly'";
                        }
                    ?>
                ><?php 
                        if (!$_SESSION['username']){ 
                            echo "Login to answer...";
                        } 
                        else {
                            echo "Answer this problem...";
                        }
                    ?>
                </textarea>
if($.trim($('#box').val()) == 'Answer this problem...') { /* do something */ }