2013-04-15 43 views
0

所以我要兩個表單輸入字段使用jQuery結合在一起:組合兩個表單元素與JS和非JS備份

//onSubmit of form 
//$('#element').val(element1 + element2); 

我如何結合這兩個字段/提交正確的值,即使JS沒有啓用?

我可以使用

<noscript> 

標籤以某種方式來實現這一目標?

服務器端邏輯不是一個選項。它不得不處於前端。

這對於像手機領域:

Phone: <select name="countrycode"> 
<option value="44" selected>UK (+44)</option> 
<option value="1">USA (+1)</option> 
<option value="213">Algeria (+213)</option> 
<option value="376">Andorra (+376)</option> 
</select> 
<input type="text" name="phone_number" id="phone_number"/> 

回答

1

沒有JS,我不得不說的第一個建議是過去如何做到這一點。

一種方法將涉及您的網站上至少2頁。一個會有一個頁面充滿國家和用戶將選擇一個。點擊其中一個將瀏覽器重定向到一個頁面,其中的電話號碼輸入預先填入了上一頁中選擇的國家的國家代碼。這將部分涉及服務器,只是爲了預先填充輸入。

另一個建議是有一個地區代碼列表,並且您的輸入預先填入格式。對於較新的瀏覽器,可以使用placeholder屬性來提供格式。這樣,用戶就知道如何編寫它。該區域代碼列表可以隱藏在<noscript>元素中。


PS:就這麼你知道,世界上95%的瀏覽器都有JavaScript。其他5%則以功能手機瀏覽器,網絡爬蟲以及禁用JS或使用腳本攔截器禁用某些分析工具的偏執型人員的形式出現。你不應該爲他們開發。相反,專注於使用JS的95%的人。

2

如果JavaScript沒有啓用,你可以將它們合併服務器端。

如果不啓用JavaScript,則無法執行此操作,如果它們是不同的字段,則需要使用腳本來獲取其值並將它們連接起來。

+0

不幸的是我受限於我被允許改變的東西,所以它必須是前端。 – Barney

+1

如果不啓用JavaScript,你不能這樣做,如果它們是不同的字段,你需要腳本來獲取它們的值並連接它們。 –