2014-08-27 61 views
0

作爲我們應用程序的一部分,我們需要能夠向我們的客戶提供某種模塊,以便他們可以輕鬆地將其注入到自己的網站中。HTML/Javascript模塊

模塊是一個帶有預定義字段的表單(我們當然會控制這個字段),當用戶點擊提交按鈕時,表單的內容應該發送給我們。我們不得不考慮驗證。第一遍將在頁面上完成(Javascript),然後在服務器上完成另一個傳遞,然後可以將錯誤返回給客戶端。

我正在尋找最好的選項在我們的客戶網站中嵌入該行爲。

我們想到了一個調用我們的服務器來獲取html/js的iframe,但我不確定這是否是最好的。

我們正在使用ASP.Net MVC和Web API 2,所以我可以使用剃鬚刀構建大部分表單並處理這種驗證(簡單方法),但我正在尋找最便攜的/可重用的解決方案,因爲我們想要避免如果客戶改變技術就不得不重做整個事情。

任何線索?

回答

1

如果您將其作爲簡單合併腳本進行操作比使用系統中直接請求的內容,最好將面板與後端完全分離,所以前端是純JavaScript,HTML和CSS執行客戶端驗證,然後使用AJAX將數據傳回給您系統進行服務器端記錄和驗證,同時牢記the same origin policy的限制。您可以返回驗證結果並將其顯示在頁面中。

除非您的表單異常複雜,否則使用JQuery實現並使用REST風格的方法(通過類似於Web API的接收方法)可以很容易地接收來自您身邊的請求。

這兩種方法都有正面和負面的作用,但不在DOM之內意味着IFrame很難融入到頁面設計中。

+0

是的,我正在閱讀如何創建自定義jQuery模塊,看起來像要走的路。一個簡單的庫,加載($(「#result」).load(「ajax/test.html」);)HTML與相關的js和web api背後的通信。 – 2014-08-27 13:42:50

0

從經驗來看,畢竟我會建議使用。另一種方法是使用某種API,但是在大多數情況下,設計一個安全的面向公衆的API並釋放其優勢並不值得投入時間。此外,方法在以後的API不提供的更改方面具有很大的靈活性。唯一需要記住的「重要」部分是製作一個簡單的工具來自定義iframe的外觀(例如背景顏色,文本顏色,錯誤框顏色等)。