嗨,我有一個網頁,可以讓一些人通過點擊按鈕添加信息到他們的網頁,或多數民衆贊成在任何目標。他們點擊按鈕,頁面的顯示部分變成帶有Javascript的表單。現在,這個表單只允許他們選擇他們想要更改的信息的哪一部分,在提交時我不想重定向,我不希望它甚至向服務器發送任何信息。表單只有一個值,我希望將其傳遞到一個函數中,該函數存儲第一個表單的值,將舊錶單放在舊錶單的舊錶單上,然後在此之後將信息提交給PHP處理其餘部分並更新數據庫的服務器。所以我有這個迄今爲止,Javascript有一個表單提交只需更新div標籤中的html
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="<?php echo BASE_JS_URL;?>gamearray.js"></script>
<script type="text/javascript">
function addGameForm(){
var addGameForm = '<form name="game" id="game" onsubmit="displayGameForm(this.form[game])">'
+'<select name="game" id="game">'
+'<option value="starcraftII">Starcraft II</option>'
+'<option value="worldofwarcraft">World of Warcraft</option>'
+'<option value="callofduty">Call of Duty</option>'
+'</select>'
+'<input type="submit" value="Add">'
+'</form>';
$("#user_info").html(addGameForm);
}
function displayGameForm(gamename){
$("#user_info").html(gamearray[gamename]);
}
的addGameForm()函數的作品,但submited當它的形式只是重定向我就開始與遊戲中的URL值的頁面。任何幫助將超級讚賞!此外,如果有更好的方法來將html變成新行的javascript變量而沒有那些煩人的+''東西,我會很感激知道!
在此先感謝!
編輯好的,爲了更清楚起見,頁面上有一個按鈕,點擊後調用addGameForm()函數。在頁面上的div標籤中顯示新的表單(工作),然後在提交新表單時,我需要它加載一個新表單,以便用戶在提交之前可以完成所需的所有數據到服務器。一個數據庫調用,加上它看起來更酷。 :P
編輯:這裏是gamearray.js文件。
gamearray = new Array{
starcraftII: 'Hi',
callofduty: '<form name="callofduty" id="callofduty" action="callofduty_info_handle.php" method="get">'
+'Username: <input type="text" name="username" id="username"/><br/>'
+'Kill/Death Ratio: <input type="text" name="kdr" id="kdr"><br/>'
+'Role: <select name="role" id="role">'
+'<option value="Sniper">Sniper</option>'
+'<option value="Explosives">Explosives</option>'
+'<option value="Close Quarters">Close Quarters</option>'
+'<option value="Flag Runner">Flag Runner</option>'
+'<option value="Cover Fire">Cover Fire</option>'
+'<option value="Assault">Assault</option>'
+'<option value="Defender">Defender</option>'
+'</select><br/>'
+'Game Type: <select name="gametype" id="gametype">'
+'<option value="Free for All">Free for All</option>'
+'<option value="Team Deathmatch">Team Deathmatch</option>'
+'<option value="Capture the Flag">Capture the Flag</option>'
+'<option value="Mercenary">Mercenary</option>'
+'<option value="Domination">Domination</option>'
+'<option value="Ground War">Ground War</option>'
+'<option value="Demolition">Demolition</option>'
+'<option value="Sabotage">Sabotage</option>'
+'<option value="Headquaters">Headquarters</option>'
+'<option value="Search and Destroy">Search and Destroy</option>'
+'<option value="Team Tactical">Team Tactical</option>'
+'</select><br/>'
+'<input type="submit" value="Add">'
+'</form>',
worldofwarcraft: ''
};
在哪裏'gamearray'從何而來?請詳細說明您的要求或張貼更多示例代碼... – 2012-07-06 10:03:33
在那裏放置一些額外的信息。 gamearray只是一個巨大的關聯數組,存儲的html與來自addGameForm()函數值的鍵配對。如果你需要更多的信息,只需要去問 – samuraiseoul 2012-07-06 10:11:33
我不會建議在javascript中存儲這樣的遊戲數組數據。最好讓某種服務器端腳本生成它,最好在數據庫中使用類似'遊戲','遊戲類型'和'角色'表的東西。然後,您可以使用遊戲的ID來調用腳本,並讓它生成HTML。 jQuery的$(「element」).load()函數非常適合這樣的東西... – 2012-07-06 11:40:32