2012-10-22 118 views
2

这些设置都不包含所选单词。这意味着,当选择列表被传递回PHP中的选择成为“撤消”:未设置选择属性

jQuery("#tag_photo2").val("<?php echo $pg->m2; ?>").attr("selected",true); 
    jQuery("#tag_photo2").val("<?php echo $pg->m2; ?>").attr('selected','selected'); 
    jQuery("#tag_photo2").val("<?php echo $pg->m2; ?>").prop("selected",true); 

以下介绍的选择实际上是已知的:

jQuery("#value2").html($("#tag_photo2 :selected").text() + " (VALUE: " + $("#tag_photo2").val() + ")"); 

我取“当前选择的:显示test123(VALUE:2)'。

这里的选择是正确的,但如果发送到PHP它会丢失。

尝试使用jQuery 1.8.2和1.7.1,Firefox 15.0.1和Chrome 22.0.1229.94。

已经四处搜索,找不到任何其他方式在选项的值字段中设置“选定”字词。

任何想法如何使这项工作?

+2

随机旁注,在前端编码中混合后端是一种不好的编码习惯,你应该有一个分离的担忧。以另一种方式抓住元素。 –

+1

如果你有服务器端的值(在PHP中),你可以简单地将它们设置在HTML/PHP中,而不是用javascript来做它的客户端。 – jrummell

+1

您必须在'option'元素上设置'selected'属性而不是'select'。 – Musa

回答

1

尝试.prop而不是.attr

$("#selectIDGoesHere > option[value='valueOfTheOptionHere']").prop("selected", true); 
jQuery('#tag_photo1 > option[value="2"]').prop('selected',true) 

此外,如果您使用的皮肤选择喜欢选择或者选择二任何插件,你必须刷新它们。