textarea문의드립니다. 채택완료

7년 전 조회 2,667

사진에서 보시다시피

이력내역(textarea)부분에

 

자격내용 1,2,3 적은 내용을 적을때마다 이력내역에도 적히게 하고하고자 합니다.

아래 코드에 맞게 스크립트를 짰는데

각가 적을때마다 앞에 글이 지워지고 마지막 3만 남는데

1,2,3 각각 다 나타나게 어케수정할까요1028346400_1536826350.5045.jpg

Copy
<tr class="layer">
            <th scope="row"><label>이력내역</label></th>
            <td class="one_t">
                
             <textarea  style="height:100px !important; padding-left:0;"  name="pt_msg1" id="pt_msg1" required class="frm_input required sl">
                   <?php echo get_text(cut_str($it['pt_msg1'], 250, "")); ?>
             </textarea>
             
             
                    <!--<?php echo editor_html('pt_msg1', get_text($it['pt_msg1'], 0)); ?>-->
              </td>
       </tr>
        
        <tr>
            <th scope="row"><label>자격내용</label></th>
            <td>
             <div id="pre_set" >
                <input placeholder="업체명"  id="item01"  class="tt1" type="text" name="" value="" style="width:200px" onkeyup="myFunction1()"> 
                <input placeholder="경력내용" id="item02" class="tt2" type="text" name="" value="" style="width:200px" onkeyup="myFunction2()"> 
                <input placeholder="기간" id="item03" class="tt3" type="text" name="" value="" style="width:200px" onkeyup="myFunction3()"> 
                <input type="button" value="삭제" onclick="remove_item(this)">
            </div>
             
            <div id="field"></div>
             
            <span style="width:100%; float:left; text-align: center; margin-top: 20px; margin-bottom: 15px;">
                <input  type="button" value=" 추가 " onclick="add_item()">
            </span>
       </td
     </tr>   

 

 

 

 

 

<script>
function myFunction1() {
    var x = document.getElementById("item01").value;
     document.getElementById("pt_msg1").value = x;
 
}
</script>

<script>
function myFunction2() {
    var x = document.getElementById("item02").value;
    document.getElementById("pt_msg1").value = x;
}
</script>
<script>
function myFunction3() {
    var x = document.getElementById("item03").value;
     document.getElementById("pt_msg1").value = x;
}
</script>

답변 2개

채택된 답변
+20 포인트

myFunction1 ~3 이걸 다 없애고

myFunction 하나만 사용 하시고

function myFunction() {

    var item01 = $("#item01");

   var item02 = $("#item02");

   var item03 = $("#item03");

   var x = item01+","+item02+","+item03;

  $("#pt_msg1").val(x);

}

 

01~03까지 아무 값이 없다면 ,,, 이런식으로 들어갈탠데 그건 if문으로 데이터 가 있는지 한번 체크해서 문자열을 합쳐주는 방법으로 해결하시면 될거같습니다.

 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 4개

값이 키보드로 칠때 같이 들어가야되서요..
그래서 ㅈ알랴주신 방법은 값이저장된 이후에 가능하지 않나요?~
[object Object],[object Object],[object Object] 이렇게 뜨네요
<script>
function myFunction1() {

var item01 = document.getElementById("item01").value;

var item02 = document.getElementById("item02").value;

var item03 = document.getElementById("item03").value;

var x = item01+","+item02+","+item03;

$("#pt_msg1").val(x);

}


</script>

이렇게 변경해서 해결했습니다.
감사합니다!
var item01 = $("#item01").val();

var item02 = $("#item02").val();

var item03 = $("#item03").val();

인데 오타네요
<tr>
<th scope="row"><label>자격내용</label></th>
<td>
<div id="pre_set" >
<input placeholder="업체명" id="item01" class="tt1" type="text" name="" value="" style="width:200px" onkeyup="myFunction1()">
<input placeholder="경력내용" id="item02" class="tt2" type="text" name="" value="" style="width:200px" onkeyup="myFunction1()">
<input placeholder="기간" id="item03" class="tt3" type="text" name="" value="" style="width:200px" onkeyup="myFunction1()">
<input type="button" value="삭제" onclick="remove_item(this)">
</div>

<div id="field"></div>

<span style="width:100%; float:left; text-align: center; margin-top: 20px; margin-bottom: 15px;">
<input type="button" value=" 추가 " onclick="add_item()">
</span>
</td
</tr>


이렇게 추가누를때마다 새로 또 다음칸에 똑같이 적는칸이 나오고
적히게 할려고하는데 ㅠㅠ
어케할까요

댓글을 작성하려면 로그인이 필요합니다.

document.getElementById("pt_msg1").value = x + x2 + x3 이런식으로 해야하지 않을까요

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

음 안되네여..ㅠㅠ

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인
🐛 버그신고