Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/283.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何避免改变&;至&;amp;何时将ajax响应显示到div中?_Php - Fatal编程技术网

Php 如何避免改变&;至&;amp;何时将ajax响应显示到div中?

Php 如何避免改变&;至&;amp;何时将ajax响应显示到div中?,php,Php,我得到了一个php脚本(getit.php),可以打印出一些超链接。我使用ajax调用phpscript并在div中显示它。问题是所有这些超链接URL都有&而不仅仅是&(当我在firefox中查看选择源代码时)!!如果超链接URL具有&则它将无法正常工作!但是,如果我直接调用getit.php脚本,超链接只会得到& 如何避免将&转换为&使用ajax调用php脚本时?我的目标是复制这些超链接并在其他地方使用它们,但所有超链接都会获得&,而不仅仅是&。是否有一种方法可以将超链

我得到了一个php脚本(getit.php),可以打印出一些超链接。我使用ajax调用phpscript并在div中显示它。问题是所有这些超链接URL都有
&
而不仅仅是
&
(当我在firefox中查看选择源代码时)!!如果超链接URL具有
&则它将无法正常工作!但是,如果我直接调用getit.php脚本,超链接只会得到
&

如何避免将
&
转换为
&使用ajax调用php脚本时?我的目标是复制这些超链接并在其他地方使用它们,但所有超链接都会获得
&
,而不仅仅是
&
。是否有一种方法可以将超链接html源代码显示在to文本框中,而不是在div中显示,并且只显示
&
?换句话说,如何将ajax响应源代码附加到textarea中

getit.php脚本:

echo "<a href=\"../test/doit.php?variable=".$result2.".net/";
echo ("&");
echo "id1=".$result."&id2=".$result3."&title=".$title_name."\">".$title_name."</a>";  
echo "<br>";
echo”“;
回声“
”;
对getit.php的ajax调用:

<script type="text/javascript">
function addHit(str,str2) {

$.ajax(
{
      type: 'GET',
    url: './getit.php'+pagenumber,
    url: './getit.php?value='+str+'&title='+str2,

            success: function (good)
            {
              //handle success

                  //alert(good)
                 $('#myDiv').append(good)

            },
            failure: function (bad)
            {
               //handle any errors

                alert(bad)

            }



});

}
</script>
</head>
<body>


<a href="javascript:void(0);" onClick="addHit('http://www.somesite.com/value/12','Episode 12')" > episode 12 </a> <br />
<a href="javascript:void(0);" onClick="addHit('http://www.somesite.com/value/13','Episode 13')" > episode 13 </a> <br />


<div id="myDiv"></div>

函数addHit(str、str2){
$.ajax(
{
键入:“GET”,
url:“./getit.php”+页码,
url:'./getit.php?value='+str+'&title='+str2,
成功:功能(良好)
{
//成功
//警惕(良好)
$('#myDiv')。追加(好)
},
故障:功能(坏)
{
//处理任何错误
警报(坏)
}
});
}



这将附加到文本区域的HTML中:

var textarea = $("textarea[name='content']");
textarea.html(textarea.html()+good);

我认为
&
href
属性中应该是可以的,当你点击链接时,浏览器会将它们转换成
&
。我找到了一种方法,使用textarea作为html响应的位置。但是不知道如何附加它$(“textarea[name='content']”)html(良好);如何将此响应附加到textarea?$(“textarea[name='content']”)html($((“textarea[name='content']”)html()+good);您实际上想要
&而不是
&
。这是获取有效HTML的唯一方法。我看不到你的脚本中有任何地方可以这样做,所以浏览器正在解析你的无效HTML,并且对你很好。始终在HTML上下文中使用的变量数据周围使用
htmlspecialchars()。我还可以建议
http\u build\u query()
?谢谢大家。barmar我可以用你们上面发布的代码将每个响应放在文本区的单独一行吗$(($textarea[name='content'])html($($textarea[name='content'])html()+良好);工作正常,但我只想转到下一行获得每个响应!