2011-09-29 53 views
0

大家好所以這裏的問題,我認爲這主要是與我缺乏在Javascript知識的一個小問題,但這裏是我所做的:如何改變能見度動態生成內容的JavaScript和PHP

JS代碼:

function mostrarResul(idFold, Id) 
{ 

    if($(idFold).css(visibility) == "none") 
    { 
     $(idFold).css(visibility, inline); 
     $(Id).detach(); 
     $(Id).append("<a id='"+Id+"' class='showmore' onclick='mostrarResul("+idFold+", "+Id+")'>ver menos</a>"); 
    }else 
    { 
     $(idFold).css(visibility, none); 
     $(Id).detach(); 
     $(Id).append("<a id='"+Id+"' class='showmore' onclick='mostrarResul("+idFold+", "+Id+")'>ver m&aacute;s</a>"); 
    } 

} 

PHP代碼:

$idFolder = $item[_folder_name]; 
        $idFolder = strtolower($idFolder); 
        $idFolder = str_replace(" ", "_", $idFolder); 
        echo "<div class='result'>"; 
        echo "<div class='item'> 
        <label><a onclick='mostrarResul($idFolder, $id)'>".$item[_folder_name]."</a></label>"; 
        $news = process_all("SELECT * FROM _tips WHERE _folder = '$item[_folder_name]' ORDER BY _date_create LIMIT 0,20"); 
        echo "<div class='itemNews' id='".$idFolder."' style='display:none'>"; 
        echo "<ul>"; 
        if ($news) foreach($news as $n) 
        { 
         echo "<a href='/consejos-recomendaciones/".$n[_permalink]."'>".$n[_subject]."</a><br/>"; 
        } 
        echo "</ul"; 
        echo "</div>"; 
        echo "<a id='".$id."' class='showmore' onclick='mostrarResul($idFolder, $id)'>ver m&aacute;s</a> 
        </div>"; 
        echo "</div>"; 
        $id += 1; 

確定這樣的JS代碼應該改變依賴它的可見性屬性的當前狀態和分離&根據相同的事情追加代碼,我真正的問題是發送變量到JS並操縱它們時,任何提示?

嗨,有人之前說過我可以使用Jquery.js來做這件事,我想問怎麼???,我已經在使用jquery來處理其他事情,並且想要現在如何使用它創建標籤的Id?

已解決。 另一件事是,你們現在在PHP 5.2中的什麼函數返回一個我想要的長度的字符串,例如

String Val =「Hello everyone」;

(函數來操縱字符串)

和新的字符串val是「你好」。

回答

1

所以,你的問題(我看到)的是,裏面的CSS(一切)應在報價。我假設你使用jQuery?如果還沒有,你需要把它列入你的頁面的頭,像這樣:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js"></script> 

,那麼你在jQuery中寫的一切不應該是不帶引號:

$(idFold).css(visibility, inline); 

,但應該是這樣的:

$(idFold).css('visibility', 'inline'); 

此外,隱藏的屬性不是「無」是知名度

正確的屬性http://www.w3schools.com/cssref/pr_class_visibility.asp有更多信息。

+0

好,我做了你告訴我的,但我有一個小問題,它仍然無法正常工作我檢查了Firefox錯誤控制檯,它說:「admin0未定義」。 admin0是生成的id摺疊之一 –

+0

我現在不是,但我是否正確地傳遞變量?我的意思是在這個函數中「mostrarResul($ idFolder,$ id)」 –

+0

所以我會用'hidden'替換'none',因爲'none'只對'display'屬性有效,而不是'visibility'。在傳遞變量時,你實際發送到js函數中的是什麼?他們需要成爲字符串。我剛剛注意到的另一個問題是,您需要更改遞歸onclick事件的方式。 – rncrtr

1

你最後一個問題的答案是substr。 http://php.net/manual/en/function.substr.php 所以你的情況,這將是

$var = "Hello everyone"; 
$new_var = substr($var, 0, 5); 
echo $var . ' - ' . $new_var; 

輸出將是:大家好 - 你好

+0

是的,這會幫助我很多,我不記得功能。謝謝 –

相關問題