2012-01-06 22 views

答えて

15

はすべてのためのHTML文字列を使用しないでください!

$(this).append(
    $('<input>', { 
     type: 'text', 
     val: $('#div1').text() 
    }) 
); 
+0

ありがとうございます。おそらく最善の方法 – jQuerybeast

+0

@minitechあなたはHTML文字列を使用していないリソースを持っていますか?それについて読むことが大好きです。ありがとう – jQuerybeast

+0

@jQuerybeast:手ではありません。私は今でもそれについてのブログ投稿を書くことができました:)その理由は、エスケープやそのようなエラー、または実行時に自分自身を明示するだけのエラーを心配する必要はないからです。 – Ryan

2
$(this).append('<input type="text" value='+ $('#div1').html()+ '>'); 
+0

btw ... divにはval()の値がありません –

+0

@JosephMarikle yeap。それに気付かなかった。 –

1
$(this).append('<input type="text" value=' + $('#div1').val() + '>'); 

はまた+

でconcatonateすることを忘れないでください、これは$(これは)実際のオブジェクトであると想定します。

+2

btw ... divsに 'val()'の値がありません –

+1

div1のIDが入力されます。彼はhtmlを提供していないので、これはまだ正しいかもしれません。 –

+1

LOLは非常に真実ですが、多少...おそらくありません。 –

0

<div id="parent-dv"> 
    <lable for="posting">POST</lable> 
    <textarea style="width:400px; height:auto;"></textarea> 
    <input type="Submit" id="inputsubmit"> 
    <button id="clear">Clear</button> 
</div> 

$(document).ready(function(){ 
 
$('#inputsubmit').on('click',function(event) 
 
\t { 
 
var $inpute2xt = $("#parent-dv").find('textarea').val(); 
 
$('#parent-dv').append("<p></p>").addClass("newp").append($inpute2xt); 
 
\t \t \t 
 
\t } 
 
\t \t); 
 
\t 
 
\t } 
 
\t); 
 
\t 
 
\t
<!doctype html> 
 
<html lang="en"> 
 
<head> 
 
    <meta charset="utf-8"> 
 
    <style> 
 
    </style> 
 
\t <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script> 
 
</head> 
 
<body> 
 
    
 
<div id="parent-dv"> 
 
\t <lable for="posting">POST</lable> 
 
\t <textarea style="width:400px; height:auto;"></textarea> 
 
\t <input type="Submit" id="inputsubmit"> 
 
\t <button id="clear">Clear</button> 
 
\t <p></p> \t 
 
\t </div> 
 
    
 

 
    
 
</body> 
 
</html>

関連する問題