我的問題如下:jQuery沒有執行的部分
當我測試這個時,標記爲NOT BEING EXECUTED的部分未被執行。 該點之前的其他代碼工作正常,但在該行之後沒有任何反應。
我錯過了什麼嗎?我使用firebug運行Firefox,我可以看到變量(已註冊,groupcontracting和第三方)被定義爲1或0 ..但它們看起來不可見於'NOT BEING EXECUTED'行之下的代碼行。
$(document).ready(function() {
$('#restofform').css('display', 'none');
$('#pharmdata').css('display', 'none');
$('#form_bottom').css('display', 'none');
$('#nextsteps').css('display', 'none');
$('#group_status_message').css('display', 'none');
$("#Affiliation").css('display', 'none');
$("#affiliation_note").css('display', 'none');
$("#AffiliationLabel").css('display', 'none');
$("#affilitation").css('display', 'none');
var enrolled;
var groupcontracting;
var thirdparty;
$('#UserNumber').keyup(function check_enrollment() {
//get the userid
var userid = $('#UserNumber').val();
var input_length = $("#UserNumber").val().length;
function populate(frm, data) {
$.each(data, function (key, value) {
$('[id=' + key + ']', frm).val(value);
});
}
if (input_length >= 7) {
//network enrollment check
var enlink = "enrollment_check.php?userid =" + userid;
var gpclink = "group_contracting_check.php?userid =" + userid;
var bncdlink = "thirdparty_check.php?userid =" + userid;
$.getJSON(enlink, function (result) {
console.log(result);
if (jQuery.isEmptyObject(result)) {
//show that the pharmacy is not enrolled
$('#enroll_status').addClass('badge badge-inverse');
$('#enroll_status').html('Not Enrolled');
enrolled = '0';
console.log(enrolled);
} else if (!jQuery.isEmptyObject(result)) {
//show that the pharmacy is enrolled
$('#enroll_status').addClass('badge badge-success');
$('#enroll_status').html('Enrolled');
enrolled = '1';
console.log(enrolled);
}
});
// end of network enrollment check
// group contracting affiliation check
$.getJSON(gpclink, function (gcresult) {
console.log(gcresult);
if (!jQuery.isEmptyObject(gcresult)) {
//show that the username is available
$('#group_status').addClass('badge badge-success');
$('#group_status').html('Group Affiliated');
groupcontracting = '1';
console.log(groupcontracting);
} else if (jQuery.isEmptyObject(gcresult)) {
//show that the username is NOT available
groupcontracting = '0';
console.log(groupcontracting);
}
});
// end of group contracting check
// third party contractual relationship check
$.getJSON(bncdlink, function (bdresult) {
console.log(bdresult);
if (!jQuery.isEmptyObject(bdresult)) {
//show that the username is available
$('#thirdparty_status').addClass('badge badge-success');
$('#thirdparty_status').html('Third Party');
thirdparty = '1';
console.log(thirdparty);
} else if (jQuery.isEmptyObject(bdresult)) {
//show that the username is NOT available
thirdparty = '0';
console.log(thirdparty);
}
});
//end of third party check
// ***********THIS PART IS NOT BEING EXECUTED *************
// check to see what the variables are set to and display accordingly
if ((enrolled == '0') && (groupcontracting == '0') && (thirdparty == '0')) {
// set hidden fields
$('input[name=enrolled]').val('0');
$('input[name=groupcontracting]').val('0');
$('input[name=thirdparty]').val('0');
//show and hide appropriate parts of forms
$('#restofform').css('display', '');
$('#form_bottom').css('display', '');
$('#pharmdata').css('display', 'none');
$('#nextsteps').css('display', '');
$('#form_continue').attr('disabled', true);
$('#form_continue').css('display', 'none');
$('#form_enroll').attr('disabled', false);
$('#form_enroll').css('display', '');
// enable form fields
$('#FirstName').attr('disabled', false);
$('#LastName').attr('disabled', false);
$('#EmailAddress').attr('disabled', false);
$('#HomePhone').attr('disabled', false);
$('#FaxNumber').attr('disabled', false);
$('#CompanyName').attr('disabled', false);
$('#Role').attr('disabled', false);
$('#Comments').attr('disabled', false);
//display third party message since the Pharmacy will need to sign with them.
$('#steps').append('<li>This would be the third party statement, letting the pharmacy know that the third party will be contacting them.</li>');
} else if ((enrolled == '0') && (groupcontracting == '1') && (thirdparty == '0')) {
// set hidden fields
$('input[name=enrolled]').val('0');
$('input[name=groupcontracting]').val('1');
$('input[name=thirdparty]').val('0');
//show and hide appropriate parts of forms
$('#restofform').css('display', '');
$('#form_bottom').css('display', '');
$('#pharmdata').css('display', 'none');
$('#nextsteps').css('display', '');
$('#form_continue').attr('disabled', true);
$('#form_continue').css('display', 'none');
$('#form_enroll').attr('disabled', false);
$('#form_enroll').css('display', '');
// enable form fields
$('#FirstName').attr('disabled', false);
$('#LastName').attr('disabled', false);
$('#EmailAddress').attr('disabled', false);
$('#HomePhone').attr('disabled', false);
$('#FaxNumber').attr('disabled', false);
$('#CompanyName').attr('disabled', false);
$('#Role').attr('disabled', false);
$('#Comments').attr('disabled', false);
//display third party message since the Pharmacy will need to sign with them.
$('#steps').append('<li>This would be the third partystatement, letting the pharmacy know that the third party will be contacting them.</li>');
// show message to Pharmacy that they can enroll, but their group contracting entity will enroll them in products
$('#steps').append('<li>As a pharmacy currently affiliated with a group contracting entity, you will be able to enroll in the network, but enrollment in the Preferred Network will be handled by your group contracting entity.</li>');
} else if ((enrolled == '0') && (groupcontracting == '0') && (thirdparty == '1')) {
// set hidden fields
$('input[name=enrolled]').val('0');
$('input[name=groupcontracting]').val('0');
$('input[name=thirdparty]').val('1');
//show and hide appropriate parts of forms
$('#restofform').css('display', '');
$('#form_bottom').css('display', '');
$('#pharmdata').css('display', 'none');
$('#nextsteps').css('display', '');
$('#form_continue').attr('disabled', true);
$('#form_continue').css('display', 'none');
$('#form_enroll').attr('disabled', false);
$('#form_enroll').css('display', '');
// enable form fields
$('#FirstName').attr('disabled', false);
$('#LastName').attr('disabled', false);
$('#EmailAddress').attr('disabled', false);
$('#HomePhone').attr('disabled', false);
$('#FaxNumber').attr('disabled', false);
$('#CompanyName').attr('disabled', false);
$('#Role').attr('disabled', false);
$('#Comments').attr('disabled', false);
} else if ((enrolled == '1') && (groupcontracting == '0') && (thirdparty == '0')) {
// set hidden fields
$('input[name=enrolled]').val('1');
$('input[name=groupcontracting]').val('0');
$('input[name=thirdparty]').val('0');
//show & populate and hide appropriate parts of forms
$('#restofform').css('display', 'none');
$('#pharmdata').css('display', '');
$('#form_bottom').css('display', '');
$('#nextsteps').css('display', '');
$('#form_continue').attr('disabled', false);
$('#form_continue').css('display', '');
$('#form_enroll').attr('disabled', true);
$('#form_enroll').css('display', 'none');
populate('#pharmdata', result); // set as the div the fields are in and NOT the form
// disable form fields
$('#FirstName').attr('disabled', true);
$('#LastName').attr('disabled', true);
$('#EmailAddress').attr('disabled', true);
$('#HomePhone').attr('disabled', true);
$('#FaxNumber').attr('disabled', true);
$('#CompanyName').attr('disabled', true);
$('#Role').attr('disabled', true);
$('#Comments').attr('disabled', true);
// show message to Pharmacy that they should check their info before proceding
$('#steps').append('<li>If any of your information needs to be updated, please click <a href="mailto:[email protected]">here</a> to email our network support team.</li>');
//display third partymessage since the Pharmacy will need to sign with them.
$('#steps').append('<li>This would be the third party statement, letting the pharmacy know that the third party will be contacting them.</li>');
} else if ((enrolled == '1') && (groupcontracting == '1') && (thirdparty == '0')) {
// set hidden fields
$('input[name=enrolled]').val('1');
$('input[name=groupcontracting]').val('1');
$('input[name=thirdparty]').val('0');
// show message to Pharmacy that they are good to go and have nothing further to do.
$('#group_status_message').html('<p class="content-p">As a pharmacy both currently a Network Member and affiliated with a group contracting entity, no further steps are required. You will be enrolled into the Preferred Network by your group contracting entity.</p>');
} else if ((enrolled == '1') && (groupcontracting == '1') && (thirdparty == '1')) {
// set hidden fields
$('input[name=enrolled]').val('1');
$('input[name=groupcontracting]').val('1');
$('input[name=thirdparty]').val('1');
// show message to Pharmacy that they are good to go and have nothing further to do.
$('#group_status_message').html('<p class="content-p">As a pharmacy both currently a Network Member and affiliated with a group contracting entity, no further steps are required. You will be enrolled into the Preferred Network by your group contracting entity.</p>');
} else if ((enrolled == '1') && (groupcontracting == '0') && (thirdparty == '1')) {
// set hidden fields
$('input[name=enrolled]').val('1');
$('input[name=groupcontracting]').val('0');
$('input[name=thirdparty]').val('1');
//show & populate and hide appropriate parts of forms
$('#restofform').css('display', 'none');
$('#pharmdata').css('display', '');
$('#form_bottom').css('display', '');
$('#nextsteps').css('display', '');
$('#form_continue').attr('disabled', false);
$('#form_continue').css('display', '');
$('#form_enroll').attr('disabled', true);
$('#form_enroll').css('display', 'none');
populate('#pharmdata', result); // set as the div the fields are in and NOT the form
// disable form fields
$('#FirstName').attr('disabled', true);
$('#LastName').attr('disabled', true);
$('#EmailAddress').attr('disabled', true);
$('#HomePhone').attr('disabled', true);
$('#FaxNumber').attr('disabled', true);
$('#CompanyName').attr('disabled', true);
$('#Role').attr('disabled', true);
$('#Comments').attr('disabled', true);
// show message to Pharmacy that they should check their info before proceding
$('#steps').append('<li>If any of your information needs to be updated, please click <a href="mailto:[email protected]">here</a> to email our network support team.</li>');
}
}
});
// end of 3rd party contract check
// end of all checks
}); // document.ready()
您可能想嘗試將其切回到一個最小工作示例......我無法相信所有代碼都是重現問題所必需的...... – Chris 2012-07-27 16:27:04
是否報告了任何錯誤? – 2012-07-27 16:28:01
不確定它是否僅僅是將代碼粘貼到編輯器中的結果,但是縮進非常糟糕 - 並且弄清楚了什麼會變得非常困難 – freefaller 2012-07-27 16:28:24