Javascript关于不在PHP中工作的页面包括


Javascript on not working in PHP page include

我正在使用php在我的网站上生成页面。很好。我正试图通过使用include功能来包含一个网站范围的通用搜索框,这样当我添加或修改这个搜索框时,我只需要处理一个页面,而不是我网站上的每一个页面。那里也很好。

当我现在试图修改搜索框页面,以便在基本搜索表单上选择"其他"选项时(使用javascript)显示另一个选项选择字段时,问题就出现了。我已经设置了编码,当我直接访问搜索页面时,它工作得很好,但当我使用include函数将搜索页面嵌入另一个页面时,javascript函数不起作用。如果我使用iframe嵌入搜索页面,它也会很好,但我不想使用iframe,并且已经尽可能切换到php-include函数。

我使用的例子来自另一个堆叠交换问题

这是另一个stackexchange问题中使用的代码,因此您不必来回切换。

<script type="text/javascript">
function test() {
if (document.getElementById("state").value == "notinoz") {
    document.getElementById("extra").style.display = "block";
} else {
    document.getElementById("extra").style.display = "none";
}
}
</script>
<P>
<select id="state" name="state" style="width: 212px;" onclick="test()">
<option value="nsw">New South Wales</option>
<option value="qld">Queensland</option>
<option value="vic">Victoria</option>
<option value="nt">Northern Territory</option>
<option value="tas">Tasmania</option>
<option value="sa">South Australia</option>
<option value="wa">Western Australia</option>
<option value="act">Australian Capital Territory</option>
<option value="notinoz">Not in Australia</option>    
 </select>
<select id="extra" name="extra" style="display: none">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>

包括网站上任何页面的编码:

HTML;
include("/home/seocom5/public_html/postcard/iframe_pc_eph_mob.php");
echo <<<HTML

就像我说的,如果直接访问搜索页面,或者使用iframe嵌入,效果很好,但使用php-include嵌入则不起作用。

谢谢你对这个的任何想法,斯坦。。。

我刚刚意识到,当你想要.selectedIndex时,你正试图获得<select> .value,它只给出<select>中所选<option>的索引。

从那里,您可以将索引用作document.getElementById("state")[document.getElementById("state").selectedIndex]或一些变体。