태그 보관물: textarea

textarea

HTML <textarea>에 기본값을 추가하는 방법은 무엇입니까? [닫은]

내 HTML의 기본값을 설정하고 싶습니다 <textarea>. 나는 당신이 같은 것을해야 기본값을 추가 자료에서 읽었습니다 <textarea>This is default text</textarea>. 나는 그것을했지만 작동하지 않습니다. 옳은 일이 무엇입니까?



답변

여기 내 jsFiddle 예제가 있습니다. 이것은 잘 작동합니다 :

<textarea name='awesome'>Default value</textarea>

답변

자리 표시 자 속성을 사용할 수 있습니다.이 속성기본값을 추가하지 않지만 원하는 이 될 수 있습니다.

<textarea placeholder="this text will show in the textarea"></textarea>

여기에서 확인하십시오 -http : //jsfiddle.net/8DzCE/949/

중요 사항 (주석에서 Jon Brave가 제안한대로) :

자리 표시 자 특성은 텍스트 영역의 값을 설정하지 않습니다. 대신 “자리 표시 자 특성은 컨트롤에 값이 없을 때 사용자가 데이터를 입력 할 수 있도록하는 짧은 힌트 (단어 또는 짧은 문구)를 나타냅니다”(사용자가 텍스트 영역을 클릭하자마자 사라짐). 컨트롤의 “기본값”으로 작동하지 않습니다. 원하는 경우 여기에 다른 답변에 따라 여기에 실제 기본값이 있습니다.


답변

데이터베이스에서 정보를 편집하기 위해 textarea 태그로 가져 오려면 입력 태그는 여러 행을 차지하는 데이터를 표시하지 않습니다. 이 작동하지 않음, 태그 입력은 한 행입니다.

<!--input class="article-input" id="article-input" type="text" rows="5" value="{{article}}" /-->

textarea 태그에는 이 없지만 핸들 막대에서 잘 작동합니다.

<textarea class="article-input" id="article-input" type="text" rows="9" >{{article}}</textarea> 

답변

프로젝트에서 Angular.js 를 사용 하고 있고 (있는 그대로)에 ng-model대한 <textarea>설정이있는 경우 기본값을 다음과 같이 설정하십시오.

<textarea ng-model='foo'>Some default value</textarea>

…작동 안 할 것이다!

ng-model해당 컨트롤러에서 텍스트 영역으로 기본값을 설정하거나을 사용해야 ng-init합니다.

예 1 (사용 ng-init) :

var myApp = angular.module('myApp',[]);

myApp.controller('MyCtrl', [ '$scope', function($scope){
  // your controller implementation here
}]);
<!DOCTYPE html>
<html>
  <head>
    <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.15/angular.min.js"></script>
    <meta charset="utf-8">
    <title>JS Bin</title>
  </head>
  <body ng-app='myApp'>
    <div ng-controller="MyCtrl">
      <textarea ng-init='foo="Some default value"' ng-model='foo'></textarea>
    </div>
  </body>
</html>

예 2 (을 사용하지 않고 ng-init) :

var myApp = angular.module('myApp',[]);

myApp.controller('MyCtrl', [ '$scope', function($scope){
  $scope.foo = 'Some default value';
}]);
<!DOCTYPE html>
<html>
  <head>
    <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.15/angular.min.js"></script>
    <meta charset="utf-8">
    <title>JS Bin</title>
  </head>
  <body ng-app='myApp'>
    <div ng-controller="MyCtrl">
      <textarea ng-model='foo'></textarea>
    </div>
  </body>
</html>

답변

몇 가지 메모와 설명 :

  • placeholder='' 텍스트를 삽입하지만 회색으로 표시되고 (툴팁 스타일 형식으로) 필드를 클릭하는 순간 텍스트가 빈 텍스트 필드로 바뀝니다.

  • value=''<textarea>속성 이 아니며 <input>태그 (예 : <input type='text'>등) 에서만 작동합니다 . HTML5 제작자가 왜이를 통합하지 않기로 결정했는지 모르겠지만, 지금은 그런 식입니다.

  • <textarea>요소 에 텍스트를 삽입하는 가장 좋은 방법은 여기에 다음과 같이 올바르게 설명되어 있습니다. <textarea> Desired text to be inserted into the field upon page load </textarea>사용자가 필드를 클릭하면 텍스트를 편집 할 수 있으며 필드에 남아 있습니다 (placeholder='' ).

  • 참고 : <textarea></textarea>태그 사이에 텍스트를 삽입하면 삽입 한 텍스트 placeholder=''로 덮어 쓰므로 사용할 수 없습니다 .

답변

내가 이와 같은 일을 할 때 그것은 나를 위해 일했다 :

<textarea name="test" rows="4" cols="6">My Text</textarea>

답변

또한 이것은 저에게 매우 효과적이었습니다.

<textarea class="form-control" rows="3" name="msg" placeholder="Your message here." onfocus='this.select()'>
<?php if (isset($_POST['encode'])) { echo htmlspecialchars($_POST['msg']);} ?>
</textarea>

이 경우 $ _POST [ ‘encode’]는 다음과 같습니다.

<input class="input_bottom btn btn-default" type="submit" name="encode" value="Encode">

PHP 코드는와 태그 사이에 삽입되었습니다.