2011-03-16 131 views
0

我有一個簡單的salesforce(使用Web-To-Lead)形式。 我想添加一個JS,以便在提交表單時在「Full Name」字段的開頭添加「Mr.」。在提交表單時添加前綴(使用JS)

並且更新的值被傳遞。

如果有人能給我JavaScript功能,我將不勝感激。

在此先感謝。

+4

這是應該真正做服務器端......或者根本沒有。如果你把我的標題弄錯了,我會不會感到印象深刻。 – Quentin 2011-03-16 10:06:06

回答

1

像大衛一樣,我強烈建議不要這樣做。除非你允許用戶提供他們的頭銜(並且不限制他們的選擇),否則根本不要使用頭銜。

如果你真的,真的,真的想這樣做,並做客戶端:

function addTitleOnSubmit(formId, fieldId) { 
    var form = document.getElementById(formId); 
    if (form.addEventListener) { 
     form.addEventListener("submit", handleSubmit, false); 
    } 
    else if (form.attachEvent) { 
     form.attachEvent("onsubmit", handleSubmit); 
    } 

    function handleSubmit() { 
     form.elements[fieldId].value = "Mr. " + form.elements[fieldId].value; 
    } 
} 

// Then hook it up wherever you do your init: 
addTitleOnSubmit('theForm', 'fullName'); 

這由id屬性中查找form's DOM element,然後使用表單元素的elements collection來查找領域。


題外話:如果你使用一個庫像jQueryPrototypeYUIClosure,或any of several others很多這些東西都是要容易得多。它們消除了瀏覽器差異,如上面的addEventListener/attachEvent,並添加了許多有用的實用功能。

例如,使用jQuery,上面是這樣的:

$('#theForm').submit(function() { 
    var fullName = this.elements.fullName; 
    fullName.value = 'Mr. ' + fullName.value; 
}); 
+0

非常感謝您的幫助! – WebDDelhi 2011-04-09 19:02:54