2014-07-21 50 views
0

我對個人信息卡使用css樣式。PHP如何在不丟失數據的情況下添加文本框

例如:

<strong>Name: </strong><p>Bla Bla</p> 
<h1>Contact Info</h1> 
<p>E-mail: blablabla</p> 

現在我想用PHP來做到這一點。我爲此設計了我的代碼和模板。當您填寫兩個文本框(名稱,電子郵件)並單擊按鈕時,它會給我HTML代碼。

但是有些人有多個電子郵件。所以我必須爲他們添加第二個(第三,第四)文本框。我怎樣才能做到這一點,而不會丟失舊的文本框數據?

名稱:充滿 電子郵件:充滿

我需要輸入其他電子郵件所以讓我們點擊這個按鈕,另一個文本框。

名稱:空 電子郵件:空 電子郵件2:空

如何預防呢?

回答

0

我相信如果您可以發佈您嘗試的代碼的代碼段,這對每個人都有好處。

無論如何,我不得不承認,我真的不明白究竟你想達到什麼樣的,但你可能要檢查出變量傳遞在PHP PHP variable passing

+0

其實,這就像ASP.NET回發。例如,您正在填寫表單。從下拉列表中選擇您的國家和頁面刷新您的國家的城市。但是,由於autopostback,瀏覽器仍然保留以前的條目。我試圖在PHP中做這樣的事情。填寫您的數據,要求另一個文本框,文本框附帶頁面刷新,但您的數據仍然存在。簡單地說,將另一個文本框帶入頁面,而不會丟失先前的數據。 – Degauser

+0

對不起 - 我不熟悉ASP.NET,但通常您似乎有興趣根據點擊/選中的複選框/其他控件元素來動態地重新繪製頁面。互聯網上有很多來源,你可以挑選任何東西。我建議你給這個:http://www.w3schools.com/ajax/default.asp一看。 – TomasH

+0

我聽說過它,但不知道它是否適用於我。感謝這個建議。 – Degauser

0

如果我understodd。

要做到這一點有兩種方式:

1)做jQuery中。使用Session

存放在會話變量您提交表格後,在PHP

<html> 
<head> 
<title>jQuery add/remove textbox example</title> 

<script type="text/javascript" src="jquery-1.3.2.min.js"></script> 

<style type="text/css"> 
    div{ 
     padding:8px; 
    } 
</style> 

</head> 

<body> 

<h1>jQuery add/remove textbox example</h1> 

<script type="text/javascript"> 

$(document).ready(function(){ 

    var counter = 2; 

    $("#addButton").click(function() { 

    if(counter>10){ 
      alert("Only 10 textboxes allow"); 
      return false; 
    } 

    var newTextBoxDiv = $(document.createElement('div')) 
     .attr("id", 'TextBoxDiv' + counter); 

    newTextBoxDiv.after().html('<label>Textbox #'+ counter + ' : </label>' + 
      '<input type="text" name="textbox' + counter + 
      '" id="textbox' + counter + '" value="" >'); 

    newTextBoxDiv.appendTo("#TextBoxesGroup"); 


    counter++; 
    }); 

    $("#removeButton").click(function() { 
    if(counter==1){ 
      alert("No more textbox to remove"); 
      return false; 
     } 

    counter--; 

     $("#TextBoxDiv" + counter).remove(); 

    }); 

    $("#getButtonValue").click(function() { 

    var msg = ''; 
    for(i=1; i<counter; i++){ 
     msg += "\n Textbox #" + i + " : " + $('#textbox' + i).val(); 
    } 
      alert(msg); 
    }); 
    }); 
</script> 
</head><body> 

<div id='TextBoxesGroup'> 
    <div id="TextBoxDiv1"> 
     <label>Textbox #1 : </label><input type='textbox' id='textbox1' > 
    </div> 
</div> 
<input type='button' value='Add Button' id='addButton'> 
<input type='button' value='Remove Button' id='removeButton'> 
<input type='button' value='Get TextBox Value' id='getButtonValue'> 

</body> 
</html> 

2)

+0

感謝您的回答。我不熟悉jQuery。此代碼是否將數據存儲在以前的文本框中? – Degauser

+0

是的,將數據保存在文本框中。 – ivanfromer

相關問題