php dosent回显输入的正确值

php dosent回显输入的正确值,php,jquery,Php,Jquery,我想在jquery中concat一个字符串,但是当我发布该字符串时,我只看到mystringg的一部分 我的html是: <input type="text" style="display:none" name="mystring" id="mystring" value=""/> 我试着用一个字符串来表示: var mystringg=""; mystringg+= "<\n"+ti+">"; mystringg+= "\n<LOW> "+low+" &

我想在jquery中concat一个字符串,但是当我发布该字符串时,我只看到mystringg的一部分

我的html是:

 <input type="text" style="display:none" name="mystring" id="mystring" value=""/>
我试着用一个字符串来表示:

var mystringg="";
mystringg+= "<\n"+ti+">";
mystringg+= "\n<LOW> "+low+" </LOW> ";
mystringg+= "\n<MODERATE> "+moderate+" </MODERATE> ";
mystringg+= "\n<HIGH> "+high+" </HIGH> ";
mystringg+="\n</"+title+">";

alert(mystringg); // here print the right value of the string
$('#mystring').val(mystringg);
当我提醒mystringg时,我得到了正确的字符串。
但是当我在另一个php页面中发布它时,我只得到部分值,实际上我只得到变量的值,而不是手动值。

您得到的是完整值。您之所以不这么认为,是因为您将它们包装在标记中,尽管不是标准的HTML标记

如果您
var_dump($_POST['mystring']),您将看到以下内容:

字符串“低-中-高”

所以,全部价值都在那里

但是-当您查看它的
echo
时(正如您的代码所做的那样),标记被呈现为HTML标记(因此不会显示),因此它看起来如下所示:

low-medium-high

但是,如果您查看源代码,您将看到实际上它都在那里:

<ti><LOW> low </LOW> 
<MODERATE> moderate </MODERATE> 
<HIGH> high </HIGH> 
</title>

您的输入类型是什么?当我这样做时,会得到一个消息字符串(260)“…”0。我已经移除了标签,事实上,标签就是问题所在。除了var_dumb之外,还有其他解决方案不起作用吗?我找到了这个:[link],渲染完成了。谢谢你抽出时间
$string  = $_POST['mystring'];
echo $string;
<ti><LOW> low </LOW> 
<MODERATE> moderate </MODERATE> 
<HIGH> high </HIGH> 
</title>
echo htmlspecialchars( $_POST['mystring'] );