2016-10-05 7 views
-1

SuiteCRMを使用してweb-to-leadフォームを作成しました。それによって生成されたコードを使用して、私はさらにそれを強化し、4つのチェックボックスのセットを追加しました。JoomlaではJavaスクリプトコードが機能しません

HTML標準ページとして保存しました。このhtmlページをブラウザで開くと、アラートが正しく表示され、必要なすべての値が所定のMySQLデータベーステーブルに正しく送信されます。

は、ここでは、このHTMLページの完全なコードです:

<html lang='en_us'><head><base target=”_parent” /><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"></head><body><style type="text/css"><!-- 
form#WebToLeadForm, form#WebToLeadForm * {margin: 0; padding: 0; border: none; color: #333; font-size: 12px; line-height: 1.6em; font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;} 
form#WebToLeadForm {float: left; border: 1px solid #ccc; margin: 10px;} 
form#WebToLeadForm h1 {font-size: 32px; font-weight: bold; background-color: rgb(60, 141, 188); color: rgb(247, 247, 247); padding: 10px 20px;} 
form#WebToLeadForm h2 {font-size: 24px; font-weight: bold; background-color: rgb(60, 141, 188); color: rgb(247, 247, 247); padding: 10px 20px;} 
form#WebToLeadForm h3 {font-size: 12px; font-weight: bold; padding: 10px 20px;} 
form#WebToLeadForm h4 {font-size: 10px; font-weight: bold; padding: 10px 20px;} 
form#WebToLeadForm h5 {font-size: 8px; font-weight: bold; padding: 10px 20px;} 
form#WebToLeadForm h6 {font-size: 6px; font-weight: bold; padding: 10px 20px;} 
form#WebToLeadForm p {padding: 10px 20px;} 
form#WebToLeadForm input, 
form#WebToLeadForm select, 
form#WebToLeadForm textarea {border: 1px solid #ccc; display: block; float: left; min-width: 170px; padding: 5px;} 
form#WebToLeadForm select {background-color: white;} 
form#WebToLeadForm input[type="button"], 
form#WebToLeadForm input[type="submit"] {display: inline; float: none; padding: 5px 10px; width: auto; min-width: auto;} 
form#WebToLeadForm input[type="checkbox"], 
form#WebToLeadForm input[type="radio"] {width: 18px; min-width: auto;} 
form#WebToLeadForm div.col {display: block; float: left; width: 330px; padding: 10px 20px;} 
form#WebToLeadForm div.clear {display: block; float: none; clear: both; height: 0px; overflow: hidden;} 
form#WebToLeadForm div.center {text-align: center;} 
form#WebToLeadForm div.buttons {padding: 10px 0; border-top: 1px solid #ccc; background-color: #f7f7f7} 
form#WebToLeadForm label {display: block; float: left; width: 160px; font-weight: bold;} 
form#WebToLeadForm span.required {color: #FF0000;} 
--></style> 
<!-- TODO ??? 
<script type="text/javascript" src='http://localhost/suitecrm/cache/include/javascript/sugar_grp1.js?v=WCpISilUvngJZgJBZ4o1BA'></script> 
--><form id="WebToLeadForm" action="http://localhost/suitecrm/index.php?entryPoint=WebToPersonCapture" method="POST" name="WebToLeadForm"> 
<h2>FREE Blog Subscription - IT & Networking Blog</h2> 
<p style="text-align: center;">Submitting this form will add you to subscription list of IT & Networking Blog. You will receive email about each new post as soon as published.</p> 
<p><img src="http://localhost/images/banners/LeadManagement/Blog-Subscription-image.png" alt="" /></p> 
<div class="row"> 
<div class="col"><label>First Name: <span class="required">*</span></label><input name="first_name" id="first_name" type="text" required="" /></div> 
<div class="col"> </div> 
<div class="clear"> </div> 
</div> 
<div class="row"> 
<div class="col"><label>Last Name: <span class="required">*</span></label><input name="last_name" id="last_name" type="text" required="" /></div> 
<div class="col"> </div> 
<div class="clear"> </div> 
</div> 
<div class="row"> 
<div class="col"><label>Email Address: <span class="required">*</span></label><input name="email1" id="email1" type="email" required="" /></div> 
<div class="col"> </div> 
<div class="clear"> </div> 
</div> 

<p style="text-align: center;">Select the target lists, you want to join:</p> 


<input type="checkbox" id="IT" value="IT">IT<br> 
<input type="checkbox" id="Process" value="Process">Process<br> 
<input type="checkbox" id="Management" value="Management">Management<br> 
<input type="checkbox" id="Education" value="Education">Education<br> 


<p style="text-align: center;">100% Privacy! We will never spam you.</p> 

<div class="row center buttons" style="text-align: center;"><input class="button" name="Submit" type="submit" value="Subscribe" onclick="submit_form();" /> 
<div class="clear"> </div> 
</div> 
<input name="campaign_id" id="campaign_id" type="hidden" value="13f62ae3-f38d-fe80-a93a-57d4090f764d" /> <input name="assigned_user_id" id="assigned_user_id" type="hidden" value="1" /> <input name="moduleDir" id="moduleDir" type="hidden" value="Prospects" /><input name="prospect_list_id" id="prospect_list_id" type="hidden" value="ac6ce628-de45-4813-d1a0-57e2jgjhr49146" /> 

<!--my code starts here --> 
<input name="list_name_c" id="list_name_c" type="hidden" value="mello" /></div> 


</form> 


<p> 
<script type="text/javascript">// <![CDATA[ 
function submit_form() 
{ 

if (typeof(validateCaptchaAndSubmit) != 'undefined') 
{ 
validateCaptchaAndSubmit(); 
} 
else 
{ 
check_webtolead_fields(); 
//document.WebToLeadForm.submit(); 
check(); 

} 


} 


function check_webtolead_fields() 
{ 
if (document.getElementById('bool_id') != null) 
{ 
var reqs = document.getElementById('bool_id').value; 
bools = reqs.substring(0, reqs.lastIndexOf(';')); 
var bool_fields = new Array(); 
var bool_fields = bools.split(';'); 
nbr_fields = bool_fields.length; 
for (var i = 0; i < nbr_fields; i++) 

{ 
if (document.getElementById(bool_fields[i]).value == 'on') 
{ 
document.getElementById(bool_fields[i]).value = 1; 
} 
else 
{ 
document.getElementById(bool_fields[i]).value = 0; 
} 
} 
} 

} 


function check() 
{ 

var list_name = ""; 
var test = document.forms[0]; 
var txt = ""; 
var i; 

for (i = 0; i < test.length; i++) 
{ 
if (test[i].checked) 
{ 
txt = txt + test[i].value + " "; 
} 
} 
list_name = txt; 
alert(list_name); 

document.getElementById('list_name_c').value = list_name; 

} 



// ]]></script> 
</p></body></html> 

しかし、私はそれから開放&決算HTMLコードをストリップするとき、私の問題が開始されます。私はJoomlaで「カスタムHTML」モジュールを作成し、そこにコードを貼り付けて記事にアクセスしました。フォームはウェブサイトのフロントエンドで正しい形をとります。

名前、姓、電子メールの3フィールドの値はすべてデータベースに正しく記録されますが、チェックボックスの値は記録されません。私がサブミット/サブスクライブボタンをクリックした直後に発生する警告は空白です。 「 - 」とデータベーステーブルの「list_name_c」フィールドに保存され、その値が付加されている4つのチェックボックスを持っているために:JOOMLA 3.

私の目標をで働いていない理由を私は知らない

私はそれを動作させるために何ができますか?おかげで

RK

答えて

0

問題が解決されました。最終的なhtmlウェブページ上にもう1つのフォームがあるため、Javaスクリプトは機能しませんでした。ソリューションは、コード行を置き換えることでしたvar test = document.forms [0];コード行と一緒に:var test = document.MYFORMNAME;ありがとう!

関連する問題