codeigniter-external java scriptfile无法正常工作?

codeigniter-external java scriptfile not working? in my view file:

<script src="<?php echo base_url();?>js/getquestion.js" type="text/javascript"></script>

<a onclick="getQuestion()" style="width: 280px; height: 540px; padding-top: 3px;" class="btn btn-primary" id="HyperLink">Start</a>

getquestion.js:

function getquestion() {
    $.get("http://localhost/n/saq/saq/index.php/quizs/getquestion", function (resp) {
        if (resp != null) {
            $("#question").html(resp);
            $("#loading").html("");
        }
    })
}

when i click start button not showing any thing,
but when i navigate to url http://localhost/n/saq/saq/index.php/quizs/getquestion its working. pls help me

Which folder you put your .js at? Usually .js files are take places in assets/js folder, so you'll need:

<script src="<?php echo base_url(); ?>assets/js/getquestion.js" type="text/javascript"></script>

Or you can ... (more neat)

<script src="<?php echo base_url('assets/js/getquestion.js'); ?>" type="text/javascript"></script>

Just for information considering this is 2017 already

  • HTML5 don't need us to include the type attribute in <script> tag
  • PHP echo have a shorthand, instead of <?php echo base_url(); ?>, you just need <?= base_url() ?>

So you may write just like this:

<script src="<?= base_url() ?>assets/js/getquestion.js"></script>

... and you must include <!DOCTYPE html> in the first line of your pages

try this code,

<body>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
    <script src="<?php echo base_url();?>js/getquestion.js" type="text/javascript"></script>
    <a  onclick="getquestion()" style="width: 280px; height: 540px; padding-top: 3px;" class="btn btn-primary" id="HyperLink">Start</a>
     <p id="question"></p>
    </body>

js code,

function getquestion() {
            $.get(<?php echo base_url("index.php/getquestions"),function(result){
            if(result != null) {
             //alert(result);
             document.getElementById("question").innerHTML=result;
             }
      });
}