Javascript 未捕获错误:语法错误,无法识别的表达式:[object HtmlLevel]
我将一个值传递给codeigniter函数以获得结果。 但是ajax值不会传递给php函数 我的脚本功能如下:Javascript 未捕获错误:语法错误,无法识别的表达式:[object HtmlLevel],javascript,php,codeigniter,Javascript,Php,Codeigniter,我将一个值传递给codeigniter函数以获得结果。 但是ajax值不会传递给php函数 我的脚本功能如下: <script src="http://code.jquery.com/jquery-1.11.1.min.js"></script> <Script> $(document).ready(function() { $("#up").on('click',function(){ if ($("#incdec").val() < $(
<script src="http://code.jquery.com/jquery-1.11.1.min.js"></script>
<Script>
$(document).ready(function() {
$("#up").on('click',function(){
if ($("#incdec").val() < $(this).data("max")) {
$("#incdec").val(parseInt($("#incdec").val())+1);
}
});
$("#down").on('click',function(){
if ($("#incdec").val() > $(this).data("min")) {
$("#incdec").val(parseInt($("#incdec").val())-1);
}
});
});
$(document).ready(function() {
$(".butt").on('click',function(){
var e=$(".aa").val();
alert(e);
$.ajax({
type:"POST",
data:"id="+e,
url:"<?php echo site_url('pages/getit');?>",
success: function(html){
$('#'+dataprocess).html(html);
}
});
});
});
</script>
我的HTML代码:
<input type="text" name="incdec" id="incdec" value="0" class="aa"/>
<input type="button" class="butt" id="up" value="Up" data-max="5" />
<input type="button" id="down" value="Down" data-min="0" class="butt"/>
<div id="dataprocess"></div>
但我得到一个错误如下:
未捕获错误:语法错误,无法识别的表达式:[object HtmlLevel]
请帮我找到我的错误。在这段代码中:
success: function(html){
$('#'+dataprocess).html(html);
}
您正在向对象dataprocess追加一个字符串
该对象被转换为字符串“[object HtmlLevel]”,该字符串指示其类型
请尝试以下方法:
success: function(html){
$('#dataprocess').html(html);
}
编辑:
jquery选择器的工作方式,在本例中是“by id”选择器,您有“id”标记,后面紧跟着您试图选择的控件的id,在本例中是“dataprocess”
以下是关于jquery选择器的有用资源:
希望这有帮助。干杯 请以blw身份尝试此ajax:
$'dataprocess'.htmlhtml;而不是$+dataprocess.htmlhtml;是的,我知道了,但是这个值不能传递给phpfunction@Me乌拉杰:我不明白。你能换个说法吗?什么值不能传递?数据:id=+e,url:,上面的id值传递给那个控制器函数。好的,你的问题是关于你得到的错误。这是一个不同的问题,我不确定我是否理解它是什么。据我所知,您想知道为什么来自ajax调用的数据没有返回到您的div。这是因为您在success函数中遇到此错误。请按照我和其他评论员的建议,首先尝试更正,然后再试一次。如果它仍然不起作用,那么您应该调查您遇到的其他问题。现在只需看看那个特定的未捕获错误是否消失了。
$('#dataprocess').html(html);