Javascript变量在IE中不起作用||用Javascript隐藏选项

时间:2013-12-06 12:14:53

标签: javascript php jquery internet-explorer

此代码适用于Chrome& Firefox - 但在IE& Safari浏览器。

<script type="text/javascript">
$(document).ready(function() {

alert('1');

<?php foreach($options as $option): ?>
  <?php if($option['option_choice'] == 1): ?>
    var choiceid = <?php echo $option['product_option_id']; ?>;
      <?php foreach ($option['option_value'] as $option_value): ?>
        <?php if($option_value['whatsize'] == 2): ?>
          var choicebigid = <?php echo $option_value['product_option_value_id']; ?>;
        <?php endif; ?>
      <?php endforeach; ?>
  <?php endif; ?>
<?php endforeach; ?>

    alert('2');
    $('#'+choiceid+''+2).hide();
});
</script>

警报1 +2显示在Chrome / FF中,但只有警报1显示在IE中。

---生成Chrome JS ---

<script type="text/javascript">
$(document).ready(function() {
alert('1');
var choiceid = '321'; //Produktvalg ID
var choicebigid = '1111';
$('#'+choiceid+''+2).hide();
document.getElementById(choiceid+''+2).style.display = 'none';
alert(choiceid);
});
</script>

---生成IE JS ---

<script type="text/javascript">
$(document).ready(function() {
alert('1');
var choiceid = '321'; //Produktvalg ID
var choicebigid = '1111';
$('#'+choiceid+''+2).hide();
document.getElementById(choiceid+''+2).style.display = 'none';
alert(choiceid);
});
</script>

--- ---更新

添加单引号似乎有助于生成IE JS代码 - 在它为空之前。 这也添加了style =“display:none;” 新问题是IE和Safari不支持隐藏选项。将禁用该选项同时隐藏它。

--- ---状态 固定。结束问题似乎隐藏起来了

1 个答案:

答案 0 :(得分:0)

尝试使用单引号

var choiceid = '<?php echo $option['product_option_id']; ?>';

var choicebigid = '<?php echo $option_value['product_option_value_id']; ?>'