<?php
echo "*Select Category<select name='category' id='category' onChange='ajax('fill.php', '', 'populate', 'post', '1')'><option value=''>--Please Select--</option><option value='1' >1</option><option value='2'>2</option></select>";
?>
ajax函数中的参数应该代替代码(')。
答案 0 :(得分:2)
使用反斜杠报价
onChange='ajax(\"fill.php\", \"\", \"populate\", \"post\", \"1\")'
HTML属性应该在引号中,代之以交换'
和"
echo '*Select Category<select name="category" id="category" onChange="ajax(\'fill.php\', \'\', \'populate\', \'post\', \'1\')"><option value="">--Please Select--</option><option value="1" >1</option><option value="2">2</option></select>';
要提高可读性,请使用HEREDOC语法
echo <<<STR
*Select Category
<select name="category" id="category" onChange="ajax('fill.php', '', 'populate', 'post', '1')">
<option value="">--Please Select--</option>
<option value="1">1</option>
<option value="2">2</option>
</select>
STR;
答案 1 :(得分:1)
这将有效:
onChange=\"ajax('fill.php', '', 'populate', 'post', '1')\"
但是通过jquery
分配更改事件会更好更清晰$('#category').change(function(){
ajax('fill.php', '', 'populate', 'post', '1');
});
如果你不想使用jquery,你应该把你的javascript放在一个单独的函数中,只在你的onchange中调用:
onChange='callAjax()'
[...]
function callAjax() {
ajax('fill.php', '', 'populate', 'post', '1');
}
中阅读此主题
答案 2 :(得分:1)
只需在双倍和双倍之间交替使用引号。单身&amp;在需要的地方逃离:
echo "*Select Category <select name='category' id='category' onChange=\"ajax('fill.php', '', 'populate', 'post', '1')\"><option value=''>--Please Select--</option><option value='1' >1</option><option value='2'>2</option></select>";
具体来说,改变:
onChange='...'
到
onChange=\"...\"