將第二個document.ready塊內的代碼移動到第一個(這將使您的.tipsy()
呼叫可訪問變量a
)或使a
變量爲全局變量。
<script type="text/javascript">
$(document).ready(function() {
var a ="Login";
$("#login_form").submit(function() {
var formdata = $("#login_form").serializeArray();
$.ajax({
url: "ajax_login.php",
type: "post",
dataType: "json",
data: formdata,
success: function (data) {
if (data.livre === 'complete') {
a ="success";
} else
a = "Error";
}
});
return false;
});
$('.login_fields input[rel=tipsy]').tipsy({gravity: 'w', trigger: 'manual', fallback: a });
});
</script>
OR
<script type="text/javascript">
var a = "Login";
$(document).ready(function() {
$("#login_form").submit(function() {
var formdata = $("#login_form").serializeArray();
$.ajax({
url: "ajax_login.php",
type: "post",
dataType: "json",
data: formdata,
success: function (data) {
if (data.livre === 'complete') {
a ="success";
} else
a = "Error";
}
});
return false;
});
});
</script>
<script type='text/javascript'>
$(document).ready(function() {
$('.login_fields input[rel=tipsy]').tipsy({gravity: 'w', trigger: 'manual', fallback: a }); // a is not defined
});
</script>
通知我刪除從您的AJAX調用成功回調var
聲明。
UPDATE
要傳遞的a
更新值醉意,你需要運行在回調函數的調用.tipsy()
。你也可以運行它,你現在的樣子,並在回調函數更新的醉意的插件(但是我不熟悉的插件,我不知道如何做到這一點):
<script type="text/javascript">
$(document).ready(function() {
var a ="Login";
$("#login_form").submit(function() {
var formdata = $("#login_form").serializeArray();
$.ajax({
url: "ajax_login.php",
type: "post",
dataType: "json",
data: formdata,
success: function (data) {
if (data.livre === 'complete') {
a ="success";
} else {
a = "Error";
}
$('.login_fields input[rel=tipsy]').tipsy({gravity: 'w', trigger: 'manual', fallback: a });
}
});
return false;
});
});
</script>
我會用動態內容和淡入淡出來做一個簡單的css工具提示。保持簡單,並解決。謝謝 – Daniel