我是一名用戶體驗設計師,以及其中一名JS dummie /「HTML編碼人員」。通過JSON驗證一個簡單的HTML表單
我需要幫助或提示來驗證一個簡單的HTML表單通過第二個請求返回一個JSON答案,在表單被髮送之前。
我有一個的LandingPage一個非常簡單的HTML表單,用戶可以輸入優惠券代碼:如果用戶輸入自己的優惠券代碼
<form id="tokensubmit" method="GET" action="https://www.xyz/cart.html">
<div class="form-group">
<input type="text" name="tokenCodeAdd" id="tokenCodeAdd" size="25" value="" class="form-control input-lg" placeholder="Please enter Coupon Code">
</div>
<input id="input_id" type="submit" class="btn btn-lg btn-warning btn-block" value="Submit">
</form>
,並點擊提交按鈕,代碼將被添加到操作URL(https://www.xyz/cart.html),用戶被重定向到cart.html頁面。如果優惠券代碼是正確的,一切都很好。如果沒有,他會在cart.html頁面上收到一條錯誤消息。
到目前爲止這麼好。
但我想驗證優惠券代碼,而不用將用戶重定向到新網站(cart.html)。 系統已經爲此提供了第二個URL。一個網址,如:
/checkout/validate.html?tokenCode=12345678
這將返回一個JSON的answere與像一個狀態:
{"error":"Wrong Coupon Code."}
如果優惠券代碼心不是正確的。 如果它是有效的,如:
{"error":"null"}
返回。
我在尋找的是一個簡單的解決方案,首先在「提交」按鈕上單擊調用驗證URL(validation.html),解析返回的JSON,防止表單發送,如果「錯誤」是別的比「null」更高,並在表單輸入上方打印JSON消息(「錯誤的優惠券代碼」)。
如果「error」=「null」,表單行爲不應該改變。它應該打開附帶tokenCode作爲參數的https://www.xyz/cart.html URL。
什麼我'試圖/開始看起來像:
$('#tokensubmit').submit(function(event){
event.preventDefault();
var tokenCheck = $(this).find('input[id="tokenCodeAdd"]').val();
$.ajax({
url: '/checkout/validate.html'+tokenCheck,
type: 'GET',
success: function(data){
var jsonData = $.parseJSON(data);
}
});
});
它僅僅是個開始,我知道了。如果驗證失敗,則丟失真正的解析部分,並輸出錯誤消息,否則輸出錯誤消息。
任何人可以幫忙嗎? 和thx先進!
小提示:表單放置在WordPress驅動的登陸頁上,因此PHP和JQuery是一個選項。
欣賞你充實了你的情景,但你並沒有真正清楚你的問題實際上是什麼。 –