php截断字段问题

时间:2016-09-07 06:25:54

标签: javascript php

我在php中截断了一个大字段。它的工作正常,除了我在下一行收到错误。 Iam使用更多超链接截断超过25个字符。当我点击更多链接时,javascript警报会触发实际数据。

$length_limit = 25; //limit to this number of characters
$actual_length = strlen($value); //count characters in the $value
$original_text = $value;
$truncated_text = substr($value,0,$length_limit); 


if($actual_length <= $length_limit){
$value = $original_text;
} else {
$value = $truncated_text." ... <a onclick='alert(\"'.$original_text.'\")'>more</a>";

我从最后一行得到错误$ value = ....可能是一些quoatation mark问题。有人可以帮助我。

2 个答案:

答案 0 :(得分:3)

试试这个

echo $value = $truncated_text." ... <a onclick=\"alert('".$original_text."')\">more</a>";

答案 1 :(得分:2)

你可以像下面这样(其中任何一个): -

echo $value = $truncated_text.' ... <a onclick=\'alert("'.$original_text.'")\'>more</a>';

 echo $value = $truncated_text." ... <a onclick=\"alert('".$original_text."')\">more</a>";

弹出窗口代码: -

<style>
#edit_price_background_overlay {
  background: rgba(0, 0, 0, 1) none repeat scroll 0 0;
  bottom: 0;
  display: none;
  overflow-y: auto;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 999999;
}
#mainnew_window {
  color: white;
  float: left;
  margin: 20px;
  padding: 100px;
  text-align: center;
}
</style>
<div id="edit_price_background_overlay">
  <div id="mainnew_window">

  </div>
</div>
<?php
$value = 'dhgffdhgfhfhfhghgfhgfhgfhfghfghgfhgfhgfhgfgfhgfhgfhgfhgfhfgrtdyretrertertretgfdvfgvdfgdfbdfgdfbgfnbgbgfhnhhethfgbgfdnggrehgteggbfdvgfdfgergfdgfdrfgrdfgert4gtrhnfgbfdbvcvcbvcbbvcbhrgdghgyfgbfdbgfvfdbtgf';
$length_limit = 25; //limit to this number of characters
$actual_length = strlen($value); //count characters in the $value
$original_text = $value;
$truncated_text = substr($value,0,$length_limit); 


if($actual_length <= $length_limit){
echo $value = $original_text;
} else {
echo $value = $truncated_text." ... <a onclick=\"showdata('".$original_text."','mainnew_window','edit_price_background_overlay')\">more</a>";
}
?>

<script>
function showdata(mytext,innerdiv,outerdiv){

    var elem = document.getElementById(innerdiv);
    var elem2 = document.getElementById(outerdiv);
    console.log(elem);
    if(typeof elem !== 'undefined' && elem !== null) {
        document.getElementById(innerdiv).innerHTML = mytext;

        document.getElementById(outerdiv).style.display = 'block';  
      }
}

</script>

注意: - 将整个代码原样放在php文件中并检查。