以下是我在我的网站的functions.php文件中一直使用的功能的模型。据我所知,直到上个月,它一直运行良好。 JavaScript为我的串联字符串返回了两个不同的结果,一个是带有php数组索引值的字符串,另一个是包含PHP数组索引单引号的字符串。我不确定为什么现在会发生这种情况以及如何解决它。
我尝试将整个字符串连接移动到php,但这没有帮助。
function paypalpayment() {
global $wpdb;
$user = wp_get_current_user();
$user_ID = $user->ID;
$shortcode = $wpdb->get_row("SELECT MAX(ap.pending) AS pending, ap.book_datetime, ap.id, ap.hash FROM ea_appointments AS ap "
."INNER JOIN ea_users AS us ON ap.id_users_customer = us.id "
."WHERE us.wp_id ='".$user_ID."'");
$hash = $shortcode->hash;
$html = '';
$html .= '<input style="width:250px" class="mb0 btn btn-lg btn-filled cfa-button" type="button" onclick="deletapt()" value="Delete Apt.">';
$html .= '<input type="hidden" name="cancel_return"';
$html .= '<script>
var cancelurl = "https://www.myurl.com/' . $hash . '";
function deletapt(){
window.location = cancelurl;
}
$(document).ready(function() {
jQuery("input[name=return]").val("https://www.myurl.com/payment-success/");
jQuery("input[name=cancel_return]").val(cancelurl);
});
</script>';
}
问题在于,现在cancelurl
在不同的地方产生不同的结果:
在function deletapt()
中,它返回以下正确结果:
"https://www.myurl.com/90241ba3ba27e246bcd9b17b76f0b463"
在$(document).ready(function()
中,它返回以下结果的奇数:
"https://www.myurl.com/' .$shortcode->hash. '"
我需要$(document).ready(function()
才能返回
"https://www.myurl.com/90241ba3ba27e246bcd9b17b76f0b463"
我该如何解决。
答案 0 :(得分:0)
好,问题是:
$(document).ready(function()
需要
jQuery(document).ready(function()
我更改了主题,但是新主题无法像旧主题一样处理jQuery。切换后,我不得不在代码中将其拼写清楚,但我错过了这一部分。现在一切都很好。