我使用jQuery从隐藏的输入字段中获取值属性,下面是我隐藏的输入字段:
<input type="hidden" id="cat_id" value="<?=$category->cat_id;?>" />
这是获取值的jQuery:
var catId = jQuery("#cat_id").val();
挺直接的吧?但是我收到以下错误:
SyntaxError: missing : after property id
任何Google搜索或此处都会显示与对象相关的结果,但我在这里没有使用任何对象...
整个代码很大但是肯定会在这里:
<?php if($option->image_path){ ?>
<?php
$imgpath = $_SERVER["DOCUMENT_ROOT"]."/wp-content/plugins/metal-work/gates/".$option->image_path;
$img = new Imagick($imgpath);
$img->trimImage(0);
?>
<input id="img<?=$option->step_id; ?>" type="hidden" name="img<?=$option->step_id;?>" value="<?=$img; ?>" />
<input type="hidden" id="cat_id" value="<?=$category->cat_id;?>" />
<input type="hidden" id="step_id" value="<?=$option->step_id;?>" />
<input type="hidden" id="action" value="imgPost" />
<script>
var catId = jQuery("#cat_id").val();
var stepId = jQuery("#step_id").val();
var img = jQuery("img"+stepId).val();
var imgPost = jQuery("#action").val();
jQuery.ajax({
type: "POST",
url: "/wp-content/plugins/metal-work/ajax-imagemagick.php",
data: { 'catId':catId, 'stepId':stepId, img:'img', 'imgPost':imgPost },
success:function (data){
if(data == 'ok'){
alert('success');
} else {
alert('Oops something went wrong loading the image.');
}
},
});
</script>
<label for="step<?=$i;?>-<?=$option->id;?>"><?php echo $img; ?></label><br/>
<?php } ?>
此致 瑞克
答案 0 :(得分:3)
您不能将var
声明放在对象文字中。将所有这些移到函数调用之上:
var catId = jQuery("#cat_id").val();
// ...
jQuery.ajax({
type: "POST",
// ...
});
任何Google搜索或此处都会显示与对象相关的结果,但我在这里没有使用任何对象...
是的,你是。传递给.ajax()
的值是一个对象,您使用对象文字来创建它。请参阅MDN - Working with Objects。