我有一个表单,我在页面加载时将值设置为框(文本框,选择框,radiobox),如下所示。
<script>
$(function() {
$("#text").val(\''.$_GET['q'].'\');
$("#category").val(\''.$_GET['cat'].'\');
});
</script>
但主要问题是第一页加载空框,一秒钟后或有时超过一秒加载值到框。在所有框设置值后,如何显示页面?这必须是jquery。
P.S。请不要给我php解决方案。如果只有jquery解决方案。
感谢。
答案 0 :(得分:1)
为什么必须在jQuery中,为什么不能在普通的javascript中设置值,或者甚至更好地直接在HTML中设置值,因为我假设$ _GET引用PHP变量,并且您用于设置这些值的方法似乎完全没有成功?
<input type="text" value="$_GET['q']" id="text" />
或在元素
之后放置的普通js中<script type="text/javascript">
document.getElementById('test').value = $_GET['q'];
</script>
跳过一些奇怪的逃避和集中,并不关心所有不同的引用,你必须自己解决这些问题,只是为了表明我是如何做到的?
jQuery等到DOM及其中的所有内容都被加载,因此您已经拥有了jQuery解决方案。这意味着jQuery代码将始终执行,而不仅仅是直接设置值,甚至在元素可用时立即使用普通的javascript等。
如果你真的不关心用户体验或加载时间,你可以随时在你的CSS中将body
标记设置为display:none
并在你之后立即使用$('body').show();
设置jQuery脚本中的值,这是一个jQuery解决方案,但它是一个糟糕的!