これは私のphpコードです:
<?php
require('connection.php');
$query="select title,content from blogs";
echo '<html><head>';
echo '<link rel="stylesheet" href="blog.css" />';
echo '<script type="text/javascript" src="blog.js"></script></head><body>';
$i=0;
if($result=$mysqli->query($query))
{
while($news=$result->fetch_row())
{
echo "<br /><br /><strong>". $news[0]."</strong><br /><br />";
if(strlen($news[1])>60)
{
$d=0;
$content=explode(" ",$news[1]);
foreach($content as $c)
{
if($d<=60)
{
echo $c." ";
$d++;
}
else
{
if($d==61)
{
echo "<div id=a$i style='visibility:hidden'>";
echo "<a href='#' onclick='toggle(a".$i.")' style='visibility:visible'>Show/Hide</a>";
$i++;
$d++;
}
echo $c." ";
$d++;
if($d==count($content)+1)
{
echo "</div>";
}
}
}
}
else
echo $news[1]."<br /><br />";
}
$result->close();
echo "</body></html>";
}
?>
これは私のJavaScriptコードです:
function toggle(id)
{
//document.getElementById('mcontent').value=x++;
//if(x%2==0)
document.getElementById(id).style.visibility="visible";
//else
//document.getElementById('mcontent').style.visibility="hidden";
};
表示非表示ボタンが機能していません。私の戦略は、表示非表示ボタンで60語を超えるテキストを制限することです。ユーザーがボタンをクリックすると、非表示のdivが表示され、余分なテキスト(つまり、60語以降のテキスト)が含まれます。 count).Div要素は常に文字で始まる必要があるため、その前に文字「a」を追加します。これを修正するのを手伝ってください。
注: Jqueryソリューションや提案は必要ありません。上記のコードをデバッグするだけで済みます。