【问题标题】:JQuery form validation does not work for meJQuery 表单验证对我不起作用
【发布时间】:2016-01-13 17:02:47
【问题描述】:

我已经在http://jsfiddle.net/gLpHY/92/ 中测试了这段代码,在那里它运行良好,但是当我在我的计算机上运行它时它不起作用。 (我曾经只使用 html 和 jquery 测试过这段代码的两个版本,下次我将它们与 php 一起使用时,它们都对我不起作用。)

<html>
<head>
    <link rel="stylesheet" href="<?php echo base_url()?>css/style.css">
    <link rel="stylesheet" href="<?php echo base_url()?>css/tableCss.css">
    <script type="text/javascript" scr="<?php echo base_url()?>js/jquery-1.12.0.js"></script>
    <script type="text/javascript" scr="<?php echo base_url()?>js/projs.js"></script>
    <script type="text/javascript" scr="<?php echo base_url()?>js/jquery.validate.min.js"></script>
    <title>Questions</title>
</head>
<body>
    <div class="frm"><?php $a=array("id"=>"myForm","name"=>"myForm");
echo form_open('site/search',$a); ?>
        <div>
            <?php echo form_label('Question:','question'); ?>
            <?php echo form_input('question', set_value('question', @$_GET['question']), 'id="question"', 'name="question"'); ?>
        </div>
        <div>
            <?php echo form_label('Category:','category'); ?>
            <?php echo form_dropdown('category', $category_options, set_value('category', @$_GET['category']), 'id="category"', 'name="category"'); ?>
        </div>
        <div>
            <?php echo form_label('Score:','score'); ?>
        <?php echo form_dropdown('score_comparison', array('gt' => '>', 'gte' =>'>=' , 'eq' => '=', 'lt' => '<', 'lte' => '<='), set_value('score_comparison', @$_GET['score_comparison']), 'id="score_comparison"', 'name="score_comparison"'); ?>
        <?php echo form_input('score', set_value('score', @$_GET['score']), 'id="score"', 'name="score"'; ?>
         </div>
         <div>
             <?php echo form_submit('action','');?>
         </div>
         <?php echo form_close();?>
    </div>
   <script type="text/javascript">
    $(document).ready(function () {
        $("#myForm").validate({
            rules: {
                question: {
                    required: true
                }
            },
            messages: { 
                question:{
                    required: "Please enter some text" 
                }
            }
        });
    });
</script>
</body>
</html>

【问题讨论】:

  • 请去掉代码部分多余的波浪号!无法读取。
  • 谢谢,我已经编辑好了
  • 我认为你在最后那个函数之前缺少一个开头的 &lt;script&gt; 标签
  • tanx,不只是我忘了贴在这里,但在我写的实际代码中,它仍然不起作用

标签: javascript php jquery codeigniter validation


【解决方案1】:

首先,将 &lt;?php echo base_url()?&gt; 替换为 /。您可以对站点中的资源使用相对路径。路径应该是这样的:scr="/js/jquery-1.12.0.js" 对于所有脚本。

第二次用$(function () {替换你的字符串$().ready(function () {

希望这会有所帮助。

【讨论】:

  • 谢谢。不幸的是,我尝试了您的建议,但仍然无法正常工作
  • 谢谢你,现在它运行良好,这是 src 中的链接错误:)
【解决方案2】:

尝试输入完整的 URL 而不是使用 &lt;?php echo base_url()?&gt;,因为我已经看到这会导致两次打印 URL 时出现问题,然后页面显然无法找到它。此外,不推荐您编写 .ready() 的方式。您可能需要考虑在括号内添加文档,如下所示:

$(document).ready(function(){});

.ready() source

【讨论】:

  • 谢谢,我已经按照您的建议编辑了代码:
猜你喜欢
  • 2015-06-22
  • 2013-11-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-04-11
  • 2016-11-11
相关资源
最近更新 更多