2015-09-25 54 views
-2

我有一个通过jquery ajax调用的php文件,我得到了HTML类型的结果。我想显示一个选择框和选定的值。但是当我在PHP的回声中混合html代码时,我遇到了一个问题。如何在php中包含html代码echo

echo '<option <?php if($booklist[$i] == $book){?> selected="selected" <?php }?> value="'.$book_id[$i].'">'.$book[$i].'</option>'; 
+0

使用字符串concatena重刑:http://php.net/manual/en/language.operators.string.php –

+0

你可以重写我的代码,并显示如何做到这一点。我已经包括字符串concatination,但是当我在代码中对所选值执行相同操作时,它会给出语法错误 – Nathan

+1

如果您要回显已在php代码中工作的内容,则不再需要使用关闭的PHP。简单地使用像罗里建议的连接,你很好去 – Crecket

回答

1

你可以使用短代码像下面,(statment真的?假的)是一样的使用

if($booklist[$i] == $book) { 
    echo 'selected="selected"'; 
}else{ 
    echo ''; 
} 

在短码的形式,它会像下面:

echo '<option '.($booklist[$i] == $book ? 'selected="selected"' : '').' value="'.$book_id[$i].'">'.$book[$i].'</option>'; 
+0

真棒干杯....你节省了我的时间... – Nathan

+0

如果这有帮助,请打勾作为您的答案。 短代码并不总是最好的解决方案,但我发现像上面这样简短的语句,它工作得很好。 – RossW

1

请尝试此操作

$selected = ""; 
if($booklist[$i] == $book) $selected = 'selected="selected"' ; 

echo '<option '.$selected.' value="'.$book_id[$i].'">'.$book[$i].'</option>';