Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/446.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript JSONP语法错误:缺少;声明前_Javascript_Codeigniter_Jsonp - Fatal编程技术网

Javascript JSONP语法错误:缺少;声明前

Javascript JSONP语法错误:缺少;声明前,javascript,codeigniter,jsonp,Javascript,Codeigniter,Jsonp,我在控制器上有一个codeigniter函数,用于获取和检查模板的图像 在缩略图引导div id模板与脚本代码一起工作之后,我放置了一个id=模板 当前,当我选择主题时,我得到一个firebug错误 错误弹出窗口 看法 发现问题是addslashes 旧的 新的 您正在输出JSON。不是JSONP。将数据类型:“jsonp”更改为数据类型:“json”, 在某些HTML中添加斜杠将破坏该HTML。您将在图像URL中添加\个字符,并使它们出错。删除addslashes函数的所有用法。encode_

我在控制器上有一个codeigniter函数,用于获取和检查模板的图像

在缩略图引导div id模板与脚本代码一起工作之后,我放置了一个id=模板

当前,当我选择主题时,我得到一个firebug错误

错误弹出窗口

看法


发现问题是addslashes

旧的

新的


您正在输出JSON。不是JSONP。将数据类型:“jsonp”更改为数据类型:“json”, 在某些HTML中添加斜杠将破坏该HTML。您将在图像URL中添加\个字符,并使它们出错。删除addslashes函数的所有用法。encode_json将完成所有需要的转义。
您正在输出JSON。不是JSONP。我已经准备好尝试了,但是出现了NetworkError错误:404未找到-http://localhost/codeigniter/codeigniter-cms/%5C%22http://localhost/codeigniter/codeigniter-cms/image/templates/riwaka.png%5C%22听起来您已经解决了图像URL错误的问题,因为您的脚本无法解析数据,因此无法读取数据首先是图像URL。
SyntaxError: missing ; before statement
OK
{"image":"<img src=\\\"http:\/\/localhost\/codeigniter\/codeigniter-cms\/image\/templates\/default.png\\\" alt=\\\"\\\"\/>"}
public function template() {
  $this->load->helper('html');
  if (file_exists(FCPATH . 'image/templates/' . $this->configs->get('config_template') . '.png') == FALSE) {
    $img =  addslashes(img('image/no_image.png'));
    echo json_encode(array('image'=>$img));
  } else {
  if($this->input->post('config_template') !== FALSE) {
    $img = addslashes(img('image/templates/' . basename($this->input->post('config_template')) . '.png'));
    echo json_encode(array('image'=>$img));
   }
  }
}
<form action="<?php echo $action; ?>" method="post" enctype="multipart/form-data" id="form-setting" class="form-horizontal">

<div class="form-group">
<label class="col-sm-2 control-label" for="input-template"><?php echo $entry_template; ?></label>
<div class="col-sm-10">
<select name="config_template" id="input-template" class="form-control">
<?php foreach ($templates as $template) { ?>
<?php if ($template == $config_template) { ?>
<option value="<?php echo $template; ?>" selected="selected"><?php echo $template; ?></option>
<?php } else { ?>
<option value="<?php echo $template; ?>"><?php echo $template; ?></option>
<?php } ?>
<?php } ?>
</select>


<div class="form-group">
<div class="col-lg-4">
<div class="img-thumbnail">
<div id="template"></div>
</div>
</div>
</div>

</form>

<script>
console.log('Jquery is working');
$('select[name="config_template"]').on('change', function () {
var template_name;
template_name = encodeURIComponent(this.value);
$.ajax({
type: 'POST',
dataType: 'jsonp',
url: '<?=base_url('admin/setting/template');?>'  + '/',
data: { config_template: template_name
},
complete: function () {
$('.fa-spin').remove();
},
success: function (data) {
$('.fa-spin').remove();
$('#template').html(data.image);
},
error: function (xhr, ajaxOptions, thrownError) {
alert(thrownError + "\r\n" + xhr.statusText + "\r\n" + xhr.responseText);
}
});
})
</script>
public function template() {
  $this->load->helper('html');
  if (file_exists(FCPATH . 'image/templates/' . $this->configs->get('config_template') . '.png') == FALSE) {
    $img =  addslashes(img('image/no_image.png'));
    echo json_encode(array('image'=>$img));
  } else {
  if($this->input->post('config_template') !== FALSE) {
    $img = addslashes(img('image/templates/' . basename($this->input->post('config_template')) . '.png'));
    echo json_encode(array('image'=>$img));
   }
  }
}
public function template() {
$this->load->helper('html');
if (file_exists(FCPATH . 'image/templates/' . $this->configs->get('config_template') . '.png') == FALSE) {
$img = img('image/no_image.png');
echo json_encode(array('image'=>$img));
}else
{
if($this->input->post('config_template') !== FALSE)
{
$img = img('image/templates/' . $this->input->post('config_template') . '.png');
echo json_encode(array('image'=>$img));
}
}
}