在我的网络应用程序中,我有一个加载另一页的div:$('#main').load('pages/main.php');
main.php包含jquery验证脚本。如果我直接进入主php,这个脚本工作,但如果我将在我的索引页面上使用此页面加载main.php,则无法正常工作。
我该如何解决这个问题?
提前致谢。
答案 0 :(得分:1)
我最终使用.livequery()来解决这个问题! :)
看看。http://plugins.jquery.com/project/livequery/
包含插件,然后在index.php中需要这样的东西
<script type="text/javascript">
$(document).ready(function(){
$('#yourInputField')
.livequery(function() {
$('#yourInputField').YourValidatorPlugin();
});
});
</script>
答案 1 :(得分:1)
正如Inrbob指出的那样,问题是将内容加载到元素中不会加载也不会执行脚本元素。将新脚本应用于页面的适当方法是实现:
var s = $("<script src='" + script_location_for_validation + "'/>");
$("body").append(s);
这将延迟加载javascript并将代码保留在页面之外(如果您希望使用缓存来提高后续页面加载的速度,则很重要。)
除此之外,最好将您的库和脚本放在页面的末尾,这样它们就不会阻止其他下载或渲染。
答案 2 :(得分:1)
非常容易
它会起作用。
答案 3 :(得分:0)
.load()不会回退脚本。这是docs
中默认功能的一部分