【发布时间】:2012-10-22 20:31:19
【问题描述】:
这些都不会将值设置为包含所选单词。 This means that when the select list gets passed back to php the selection become 'undone':
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(值:2)”时。
这里的选择是正确的,但是如果发送到php会丢失。
已尝试使用 jQuery 1.8.2 和 1.7.1、Firefox 15.0.1 和 Chrome 22.0.1229.94。
已经四处搜索,找不到任何其他方法来在选项的值字段中设置“选定”字词。
任何想法如何使这项工作?
【问题讨论】:
-
随机附注,在前端编码中混合后端是一种不好的编码习惯,您应该分离关注点。以另一种方式抓取元素。
-
如果你有服务器端的值(在 php 中),你可以简单地在 html/php 中设置它们,而不是在客户端使用 javascript。
-
您必须在
option元素而不是select上设置selected属性。 -
@Musa 好的,需要在选项上设置它是有道理的。所以尝试了: jQuery('#tag_photo1 option[value="model1; ?>"]').attr('selected','selected');在php之后看起来像: jQuery('#tag_photo1 option[value="2"]').attr('selected','selected');我从 [link] (stackoverflow.com/questions/1311287/...) 中找到的仍然不起作用。
-
您如何发送这些数据?我的意思是假设你使用了一个静态条目,这是被发送到控制器吗?