jquery - Ajax jQuery 最佳实践 : avoid inline script? ?那么我如何传递变量

标签 jquery ajax inline-scripting

我刚刚读到一篇关于 jquery 和 ajax 的最佳实践文章,我应该避免使用内联脚本定义页面上元素的行为。这确实有意义,因为它使代码非常可读。

但是,我想问一下,如果我需要将服务器端变量传递给javascript,我该怎么办。就像考虑下面的代码...

<?php foreach($product as $product_id): ?>
<input type="button" value="Delete Favorite" onclick="delete_favorite('<?php echo $product_id; ?>')" />
<?php endforeach; ?>

在这种情况下我应该使用隐藏表单值吗?或者可能会在我定义行为的元素的 id 中添加服务器端变量?像这样..

<input type="button" value="Delete Favorite" id="button<?php echo $product_id; ?>" />

有什么建议吗?

最佳答案

您可以做一些事情,其中​​之一是使用自定义属性,例如 data-product-id (data- 前缀位于 HTML5 规范中我相信)。

不过,您也可以给该input一个id,例如product-343,然后使用...获取id p>

$(this)[0].id.replace(/\D/g, '');

(假设 this 指向 input 元素)。

关于jquery - Ajax jQuery 最佳实践 : avoid inline script? ?那么我如何传递变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5190153/

相关文章:

javascript - Legacy JavaScript 和 Javascript 之间最大的区别是什么?

javascript - 如何在 Phaser 中将tileSprite拉伸(stretch)到全屏?

javascript - AJAX Post 不发送表单数据

javascript - jquery - 未定义函数 - 从内联脚本调用此函数

javascript - Controller 内的动态字段参数

javascript - 循环浏览背景图像

javascript - 通过 onload() 和刷新按钮刷新网页

javascript - 当 <img> 的 src 刷新以指向它时,动态创建的图像不显示

python - Mitmproxy 在一个脚本中篡改 GET 和 POST 请求/响应

内联脚本的 Django Stripe js 阻塞