我刚刚读到一篇关于 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/