2014-12-18 1 views
2

클릭하여 텍스트 영역에 표시하고 싶습니다.jquery에서 다중 val 추가

한 번 전체 이름을 클릭하면 전체 이름이 텍스트 영역에 표시됩니다.

ic을 클릭하면 ICIC가 텍스트 영역에 표시되지만 fullname이 바뀝니다.

fullname, ic, hp를 서로 바꾸지 않으려면 어떻게해야합니까? 사용자가 원하는 변수를 클릭하게하고, 따라서 한 번의 클릭으로 3 가지 변수 삽입을 수행하지 않았습니다. 당신이 HTML로 작성

<span onclick=\"insert_user_eh_name('".$row['fullname']."','','');\">".$row['fullname']."</span> 
<span onclick=\"insert_user_eh_name('','".$row['ic']."','');\">".$row['ic']."</span> 
<span onclick=\"insert_user_eh_name('','','".$row['hp']."');\">".$row['hp']."</span> 

    function insert_user_eh_name(fullname,ic,phone){ 
    jQuery("#text-area").val(fullname+ ic +phone);} 
+0

당신이 .append''에'.val'을 바꿀 수 있지만, ID가 모든 인라인 JS를 제거 할 경우를 대비 한 JSfiddle입니다. 저것은 무서운 – andrew

+0

ok. 당신을 .. –

답변

1

입니다 원하는대로 식별자를 만들 수 있지만 클래스를 사용하여 쉽게 만들 수 있습니다. 한 가지 기억해야 할 점은 JS와 PHP를 함께 사용하는 것이 좋지 않다는 것입니다. 그냥 엉망이되어 결국 많은 문제를 겪게 될 것입니다. 또한 jQuery가 작동하는 방식이 아닙니다.

그런데 내가 한 일은 클릭하면 텍스트 영역의 값에 추가하고 기존 텍스트에 이전에 추가 한 텍스트가 아닌 텍스트 영역에 추가되었는지 확인하는 클릭 event handler을 생성하는 것입니다.

이 정보가 도움이됩니까?

여기

+1

'null + 'something'== 'nullsomething''. 변수를 빈 문자열로 초기화해야합니다. 'insertIntoTextArea = ''' –

+1

또한'insertIntoTextArea'를 모두 건너 뛰고'var $ elm = $ ("# text-area");를 사용합니다. $ elm.val ($ elm.val() + $ (this) .text()); ' –

+0

확실한 두 점 : –

0

임베디드 JS 코드는 정말 이상하다, 그러나 당신이 원하지 않는 경우 문자열은 val 서로 대체, 왜 추가? 예를 들면 :

var insertIntoTextArea = null;  
$('.data').on('click', function(){ 
     insertIntoTextArea += $(this).text(); 
     $("#text-area").val(insertIntoTextArea); 
    }); 

이제 :

// fullname click 
var val = $('#text-area').val() 
$('text-area').val(val + fullname) 

당신이 작성해야 할 모든 당신이 jQuery를 사용하는 경우 그래서, 여기 당신이 원하는 것 솔루션의 약 문자열 처리

관련 문제