仅在IE 7中类问题中传递动态值的JavaScript
只有在向javascript传递动态值时,我才会在IE7中遇到问题。如下图所示。这在除IE7之外的所有浏览器中都适用仅在IE 7中类问题中传递动态值的JavaScript,javascript,jquery,javascript-framework,unobtrusive-javascript,Javascript,Jquery,Javascript Framework,Unobtrusive Javascript,只有在向javascript传递动态值时,我才会在IE7中遇到问题。如下图所示。这在除IE7之外的所有浏览器中都适用 $val =$id.$i; echo "<a href='javascript:void(0);' id='network' class=$val value='$octet'>+".$octet.".0.0.0</a> <br />"; 完成下面的php代码 <?php $octets = $thi
$val =$id.$i;
echo "<a href='javascript:void(0);' id='network' class=$val value='$octet'>+".$octet.".0.0.0</a> <br />";
完成下面的php代码
<?php
$octets = $this->Ip;
$octetets = $this->octent1;
$i= 1;
$id='network';
foreach($octetets as $octet){
$val =$id.$i;
echo "<a href='javascript:void(0);' id='network' class=$val value='$octet'>+".$octet.".0.0.0</a> <br />";
value='$octet'>+".$octet.".0.0.0</span> <br />";
$i++;
}
?>
试试这个:
$(".msg_body").on('click', '#network', function(e){
e.preventDefault();
var network = $(this).attr('value');
alert(network); // alert fails in IE 7
var clsName = $(this).attr("class");
alert(clsName); // a
});
元素Id必须是唯一的,因此不要使用该属性,而是使用另一个类似的名称:
更改您的php:
<?php
$octets = $this->Ip;
$octetets = $this->octent1;
$i= 1;
$id='network';
foreach($octetets as $octet){
$val =$id.$i;
echo "<a href='javascript:void(0);' name='network' class=$val value='$octet'>+".$octet.".0.0.0</a> <br />";
value='$octet'>+".$octet.".0.0.0</span> <br />";
$i++;
}
?>
在链接上使用保留字值
容易混淆
<?php
$octets = $this->Ip;
$octetets = $this->octent1;
$i= 1;
$id='network';
foreach($octetets as $octet){
$val =$id.$i;
echo "<a href='javascript:void(0);' name='network' class=$val value='$octet'>+".$octet.".0.0.0</a> <br />";
value='$octet'>+".$octet.".0.0.0</span> <br />";
$i++;
}
?>
$(".msg_body").on('click', '@network', function(e){
e.preventDefault();
var network = $(this).attr('value');
alert(network); // alert fails in IE 7
var clsName = $(this).attr("class");
alert(clsName); // a
});