php创建的动态链接不工作在jQuery的移动
我有一个jqm应用程序,我正在努力。我正在查询一个MySQL数据库创建链接,他们不工作。我已阅读并了解到您无法在jq mobile中使用location.search,因此我在我的网站中添加了属性数据链接。php创建的动态链接不工作在jQuery的移动
我有一个cookie与用户ID设置,当用户去查找食谱时,它读取他的cookie获取他的用户ID,然后查询所有与相应的用户ID配方,然后显示它们。
我希望能够点击其中一个创建的链接,转到不同的页面,然后用该链接ID进行查询,并拉出实际的配方。
这里是我用来拉起php文件的js。
$(document).on("pageshow","#retrieve",function(){
var uid1 = $.cookie('recuid');
var uid = uid1.substr(7);
var data;
var response = '';
$.ajax({ type: "GET",
url: "retrieve_recipes.php?userid=" + uid,
dataType: "html",
async: false,
success : function(response)
{
$("#show_recipe").html(response);
}
});
});
这里是用于创建链接列表的php代码。
<?php
include_once('../recipe_holder/connect.php');
$uid = $_GET['userid'];
$sql = "SELECT * FROM recipes WHERE userid = '$uid'";
$result = mysqli_query($conn, $sql);
if (mysqli_num_rows($result) > 0) {
while($row = mysqli_fetch_assoc($result)) {
echo "<a href='#showRecipe' class='ui-btn' data-link='".$row['uid']."'>".$row['title']."</a> ";
}
} else {}
?>
这里是我使用,以获得特定配方的UID来查询数据库,并显示数据了jQuery/js代码。我有这个简化,只是简单地显示uid的警报,我想如果我能得到那么多的工作,我可以让剩下的工作。
$('[data-link]').click(function(){
var uid = $(this).attr('data-link');
alert(uid);
});
任何想法将不胜感激。
谢谢。
首先在写html标签时出错。
<a href='#showRecipe' class='ui-btn' data-link='".$row['uid']."' ".$row['title']."</a>
代替
<a href='#showRecipe' class='ui-btn' data-link='".$row['uid']."' />".$row['title']."</a>
你应该写。
您可以找到数百个关于选择器的示例。
jQuery(document).ready(function() {
jQuery(document).on('click', 'a[class*="ui-btn"]', function() {
alert(jQuery(this).attr('data-link'));
});
});
谢谢我在我的代码中使用/>它将按钮之外的文本抛出。我不知道为什么它没有复制到原始帖子。 – Dave
您应该在JavaScript中添加的数据中使用实时方法。您只需要将其用作上述示例,因为实时方法支持已保留。 –
尝试$( 'UI-BTN ')而不是$('[资料链接]') –
您的代码很容易受到[** SQL注入**](HTTPS ://en.wikipedia.org/wiki/SQL_injection)攻击。您应该通过[** mysqli **](https://secure.php.net/manual/en/mysqli.prepare.php)或[** PDO **](https ://secure.php.net/manual/en/pdo.prepared-statements.php)驱动程序。 [**这篇文章**](https://*.com/questions/60174/how-can-i-prevent-sql-injection-in-php)有一些很好的例子。 –