Javascript不接受来自文本区域的更改
我想从一个div容器中获取所有HTML,将其放在一个隐藏字段中的值中,然后向具有相同CSS样式但没有textareas标记的用户显示它 我想显示来自文本字段(textarea)的值,而不是textarea!到目前为止还不错 但是,当更改文本区域中的信息时,我的javascript代码不会从该字段中获取新信息 我的代码有什么问题Javascript不接受来自文本区域的更改,javascript,jquery,Javascript,Jquery,我想从一个div容器中获取所有HTML,将其放在一个隐藏字段中的值中,然后向具有相同CSS样式但没有textareas标记的用户显示它 我想显示来自文本字段(textarea)的值,而不是textarea!到目前为止还不错 但是,当更改文本区域中的信息时,我的javascript代码不会从该字段中获取新信息 我的代码有什么问题 <!DOCTYPE html> <html> <head> <title>Test</tit
<!DOCTYPE html>
<html>
<head>
<title>Test</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script src="//code.jquery.com/jquery-1.10.2.min.js"></script>
</head>
<body>
<?php
if(isset($_POST['save'])){
$scrita = $_POST['hid'];
$scritaInsert = strip_tags($scrita, '<p><n><nz><font><bl><br><r><chh>');
echo $scritaInsert;
exit; //just for the test
}
?>
<form method="POST">
<input type="submit" name="save" class="btn-style" value="Save" id="submitContainer"/>
<input type="hidden" name="hid" id="hid"/>
</form>
<div id="container">
<p style="text-align: center;font-weight: bold;font-size: 23px;color: black;">CocaCola</p>
<p style="text-align: center; color: black; font-size:16px; text-decoration: underline;">
The address
</p>
<p style="font-weight: bold; color: black;">
To: <textarea name="do" style="width: 920px; max-width: 100%; height: 18px;">CocaCola Company</textarea>
</p>
<p style="font-weight: bold; color: black;">
Attention: <textarea name="vnimanieto" style="width: 830px; max-width: 100%; height: 18px;">CocaCola Company</textarea>
</p>
<p style="text-align: center;font-weight: bold;font-size: 19px;color: black;">
CONTRACT<br>
<n style="text-align: center;font-size: 16px;color: black;">
For transport
</n><br>
<nz style="text-align: center;">№<textarea name="nomer" style="width: 60px; max-width: 100%; height: 18px;">1737</textarea>
Date:<textarea name="date" style="width: 90px; max-width: 100%; height: 18px;" id="date">25.05.2016</textarea>
</nz>
</p>
</div>
</body>
</html>
<script type="text/javascript">
$('#submitContainer').click(function(){
$('.picker').html('');
var content = $('#container').html();
$('#hid').val(content);
});
</script>
试验
可口可乐
地址
致:可口可乐公司
收件人:可口可乐公司
合同
运输
№1737
日期:2016年5月25日
$(“#submitContainer”)。单击(函数(){
$('.picker').html('');
var content=$('#container').html();
$('#hid').val(内容);
});
我认为您应该使用text()
方法,而不是html()
,因为html()
只会复制包括html标记在内的所有文本,而text()
只会复制真实文本
看看这个。我想你的问题可能是html斜杠的类型: 尝试:
我已将JavaScript更改为以下代码,现在可以正常工作:
<script type="text/javascript">
$('#submitContainer').click(function(){
$('.picker').html('');
$("textarea").each(function() {
$(this).text($(this).val());
});
var content = $('#container').html();
$('#hid').val(content);
});
</script>
$(“#submitContainer”)。单击(函数(){
$('.picker').html('');
$(“textarea”)。每个(函数(){
$(this.text($(this.val());
});
var content=$('#container').html();
$('#hid').val(内容);
});
当我将html更改为javascript代码中的文本时,我放松了css样式,当我在文本区域中添加新值时,结果是相同的(代码采用现有值而不是新值),我帮助您更新代码,希望这次我可以软化您的问题,兄弟:)结果是相同的。当我将新信息放入textareas时,代码不会接受它,而是显示textareas中的旧信息
<script type="text/javascript">
$('#submitContainer').click(function(){
$('.picker').html('');
$("textarea").each(function() {
$(this).text($(this).val());
});
var content = $('#container').html();
$('#hid').val(content);
});
</script>