onclick事件不会直接触发url
Onclick event won't trigger url direct
我有一个要调整的工作片段。我正在尝试更改 OnClick 事件(请参阅更改后的代码),但无法触发 OnClick 事件。
什么有效:
add_action( 'woocommerce_before_single_product', 'my_button_function', 10 );
function my_button_function() {
global $product;
echo ' <button type="button" class="back-button" onclick="history.back();"> Back to overview </button> ';
}
修改后的代码(我没有收到任何错误,但按钮什么也没做)
add_action( 'woocommerce_before_single_product', 'my_button_function', 10 );
function my_button_function() {
global $product;
echo '<button type="button" class="back-button" onclick="window.open("https://www.lanacreations.nl/products");"> Back to overview </button>';
}
我还尝试将 onclick 事件放入单独的函数中:
function myClickFunction() {
window.open("https://www.lanacreations.nl/products");
}
add_action( 'woocommerce_before_single_product', 'my_button_function', 10 );
function my_button_function() {
global $product;
echo ' <button type="button" class="back-button" onclick="myClickFunction()"> Back to overview </button> ';
有没有人看出我做错了什么?
谢谢!
您的最后一段代码无效,它混淆了 PHP 和 JavaScript。您的第二个 块会 工作,但看起来您只是有一个语法错误。你的属性中有双引号,用双引号括起来 - 所以你的 HTML 被打破了,实际上被解释为:
onclick="window.open(" https:="" www.lanacreations.nl="" products");"="">
因此,要解决此问题,您可以将 JavaScript 函数中的双引号替换为单引号,前提是您 Escape 它们。如果你用 '
开始一个字符串,你可以用正斜杠 \'
“转义”一个单引号来告诉 PHP “我希望你实际上在这里放一个单引号,而不是对待这就像字符串的结尾。
试试这个:
add_action( 'woocommerce_before_single_product', 'my_button_function', 10 );
function my_button_function() {
global $product;
echo '<button type="button" class="back-button" onclick="window.open(\'https://www.lanacreations.nl/products\');"> Back to overview </button>';
}
我有一个要调整的工作片段。我正在尝试更改 OnClick 事件(请参阅更改后的代码),但无法触发 OnClick 事件。
什么有效:
add_action( 'woocommerce_before_single_product', 'my_button_function', 10 );
function my_button_function() {
global $product;
echo ' <button type="button" class="back-button" onclick="history.back();"> Back to overview </button> ';
}
修改后的代码(我没有收到任何错误,但按钮什么也没做)
add_action( 'woocommerce_before_single_product', 'my_button_function', 10 );
function my_button_function() {
global $product;
echo '<button type="button" class="back-button" onclick="window.open("https://www.lanacreations.nl/products");"> Back to overview </button>';
}
我还尝试将 onclick 事件放入单独的函数中:
function myClickFunction() {
window.open("https://www.lanacreations.nl/products");
}
add_action( 'woocommerce_before_single_product', 'my_button_function', 10 );
function my_button_function() {
global $product;
echo ' <button type="button" class="back-button" onclick="myClickFunction()"> Back to overview </button> ';
有没有人看出我做错了什么?
谢谢!
您的最后一段代码无效,它混淆了 PHP 和 JavaScript。您的第二个 块会 工作,但看起来您只是有一个语法错误。你的属性中有双引号,用双引号括起来 - 所以你的 HTML 被打破了,实际上被解释为:
onclick="window.open(" https:="" www.lanacreations.nl="" products");"="">
因此,要解决此问题,您可以将 JavaScript 函数中的双引号替换为单引号,前提是您 Escape 它们。如果你用 '
开始一个字符串,你可以用正斜杠 \'
“转义”一个单引号来告诉 PHP “我希望你实际上在这里放一个单引号,而不是对待这就像字符串的结尾。
试试这个:
add_action( 'woocommerce_before_single_product', 'my_button_function', 10 );
function my_button_function() {
global $product;
echo '<button type="button" class="back-button" onclick="window.open(\'https://www.lanacreations.nl/products\');"> Back to overview </button>';
}