2012-12-11 31 views
0

開發輕量級CMS系統,用戶可以在其中更改文本並添加圖像。希望能夠使用form.textarea,不幸textarea不允許使用HTML標籤,至少不能使用圖片標籤。所以我已經將表單輸入從textarea更改爲div。我的問題是,如何輕鬆地將div內容作爲POST變量傳遞給PHP腳本,類似於textarea的工作方式。爲表單輸入序列化div

以下是一些代碼片段: 在HTML頭中,當單擊圖像圖標(imgBtn)時,使用此JQuery將圖像代碼追加到div內容時。

<script language="javascript" type="text/javascript"> 
    $("#imgBtn").live("click",function(){ 
    var path = "path/to/file.jpg"; 
    var imgcode = '<img src="' + path + '" alt="User Image">'; 
$('.textarea').append(imgcode); 
}); 
</script> 

然後在HTML主體中,使用這個PHP生成初始DIV或通過filewrite()類將新數據寫入文本文件。

<?php 
if ($submit==true){ //$_POST['submit'] 
$string = $text;  //$_POST['text'] this is where I need the POST text 
$flag=HTML; 
$scrubstring = sanitize($string,$flag,2,1200); //cleans input 
$scrubstring = trim($scrubstring); 
    if ($scrubstring){ 
    //scrubber returns true, write text to the file. 
$filewrite = new filewrite(); 
    //path (from root dir),string to write 
$filewrite->writer("aboutus/".$file,$scrubstring); 
    } 
     echo '<div contenteditable="true" class="textarea">'; 
    echo $scrubstring.'</div>'; 
}else{ 
    $fread = new filewrite(); //instantiate the class 
    $output=explode(",",$fread->readlastline($file)); 
    echo '<div contenteditable="true" class="textarea">'; 
    echo $output[1].'</div>'; 
    } 
    ?> 

所以總之,我需要div「textarea」的行爲像一個textarea。 與往常一樣,提前謝謝你。對的

+0

避免.live infavor() – chovy

+0

@chovy好吧,就檢查出來了,謝謝。 – rwhite35

回答

0
<script type="text/javascript"> 
$(function() { 
    $('#form').submit(function(){ 
    $('#txa').val($('#content').html()); 
    }); 
}); 
</script> 

<?php 
    echo $_POST['txa']; 
?> 


<div id="content"> 
    <h1>abcde</h1> 
</div> 

<form method="post" action="?" id="form"> 
    <input type="hidden" name="txa" id="txa" value="123" /> 
    <input type="submit" /> 
</form> 
+0

沒錯。 DIV的行爲就像一個textarea。謝謝。 rwhite35 – rwhite35