通过根据其属性值选择div,我无法选择div的html内容。
我的HTML就是这样:
<div id="infowrap1" class="widgetInfobox" possition="1" wid="QI" style="">.....</div>
<div id="infowrap2" class="widgetInfobox" possition="2" wid="CP" style="">.....</div>
<div id="infowrap3" class="widgetInfobox" possition="3" wid="PP" style="">.....</div>
<div id="infowrap4" class="widgetInfobox" possition="4" wid="MT" style="">.....</div>
让我说我想得到div的html()with possition = 1 ... 我尝试使用
var p1=$(".widgetInfobox [possition='1']").html();
alert(p1);
..但我得到'未定义',如果我仅提醒$(".widgetInfobox [possition='1']")
,我会[object Object]
。如果我选择.text()
我得到空字符串。
我该怎么做? 提前致谢
答案 0 :(得分:2)
jQuery的sizzle选择器引擎遵循CSS规则。因此,要使用多个子句选择元素,不应在它们之间添加空格。试试这个:
var p1 = $(".widgetInfobox[possition='1']").html();
还应注意,possition
和wid
不是div
元素的标准属性。使用它将意味着您的HTML无效。您应该使用data-*
属性:
<div id="infowrap1" class="widgetInfobox" data-position="1" data-wid="QI" style="">.....</div>
<div id="infowrap2" class="widgetInfobox" data-position="2" data-wid="CP" style="">.....</div>
<div id="infowrap3" class="widgetInfobox" data-position="3" data-wid="PP" style="">.....</div>
<div id="infowrap4" class="widgetInfobox" data-position="4" data-wid="MT" style="">.....</div>
var p1 = $(".widgetInfobox[data-position='1']").html();
答案 1 :(得分:2)
答案 2 :(得分:1)
删除类和属性选择器之间的空间,因为空格将使它成为后代选择器,它将找到属性为possition =&#39; 1&#39;在.widgetInfobox
var p1=$(".widgetInfobox[possition='1']").html();
答案 3 :(得分:1)
它不是后代选择器只需删除类和属性之间的空格。
var p1=$(".widgetInfobox[possition='1']").html();
我认为ID在您的代码中是唯一的,我们可以轻松地使用id
var p1 = $("#infowrap1").html();
答案 4 :(得分:1)
试试这个
session_start();
include_once'dbconnect.php';
if (isset($_SESSION['user']) != "") {
header ("Location: home.php");
}
if (isset($_POST['login'])) {
$email = mysql_real_escape_string($_POST['email']);
$pass = mysql_real_escape_string($_POST['pass']);
$sql = mysql_query("SELECT * FROM users WHERE email='".$email."'");
$num = mysql_fetch_assoc($sql);
if(count($num)>0){
if ($num['password'] == $pass)) {
$_SESSION['user'] = $num['user_id'];
header ("Location: home.php");
}
else {
echo "Cannot login";
}
}else{
echo "Cannot login, email id not found";
}
}
OR
var p1=$("[possition='1']").html();
alert(p1);
注意:您可以使用标题属性名称var p1=$("div[possition='1']").html();
alert(p1);
代替data-possition