0

我有一个选择框,它将选择写入文本区域。

此代码适用于 textarea:

<input name="aktuelles_titel" id="aktuelles_titel" value="<?php echo $row_RS_Aktuelles_und_Produktneuheiten['titel']; ?>">
<div name="aktuelles_inhalt" id="aktuelles_inhalt"><?php echo $row_RS_Aktuelles_und_Produktneuheiten['inhalt']; ?>"</div>
<input name="badetraeume_titel" id="badetraeume_titel" value="<?php echo $row_RS_Badetraeume['titel']; ?>">
<div name="badetraeume_inhalt" id="badetraeume_inhalt"><?php echo $row_RS_Badetraeume['inhalt']; ?>"</div>
<form id="teaserDetails">
<select name="teaser" onchange="setTeaser(document.Form, this.value);">
<option value="">Teaser auswählen ...</option>
<option value="1"><?php echo $row_RS_Aktuelles_und_Produktneuheiten['titel']; ?></option>
<option value="2"><?php echo $row_RS_Badetraeume['titel']; ?></option>
</select>
<textarea disabled="disabled" name="showteaser" type="text" id="showteaser" value="."> </textarea>
</form>


<script>
var teaserInhalt = {
'1': document.getElementById('aktuelles_inhalt').innerHTML,
'2': document.getElementById('badetraeume_inhalt').innerHTML
};
var form = document.getElementById('teaserDetails');
form.elements.teaser.onchange = function () {
var form = this.form;
form.elements.showteaser.value = teaserInhalt[this.value];
};
</script>

但是当 textarea 更改为 div 容器时,javascript 不起作用。我搜索了很多,改变了很多,但没有运气。我第一次这样做,我想我错过了一些小东西。

这段代码有一个错误:

<input name="aktuelles_titel" id="aktuelles_titel" value="<?php echo $row_RS_Aktuelles_und_Produktneuheiten['titel']; ?>">
<div name="aktuelles_inhalt" id="aktuelles_inhalt"><?php echo $row_RS_Aktuelles_und_Produktneuheiten['inhalt']; ?>"</div>
<input name="badetraeume_titel" id="badetraeume_titel" value="<?php echo $row_RS_Badetraeume['titel']; ?>">
<div name="badetraeume_inhalt" id="badetraeume_inhalt"><?php echo $row_RS_Badetraeume['inhalt']; ?>"</div>
<form id="teaserDetails">
<select name="teaser" onchange="setTeaser(document.Form, this.value);">
<option value="">Teaser auswählen ...</option>
<option value="1"><?php echo $row_RS_Aktuelles_und_Produktneuheiten['titel']; ?></option>
<option value="2"><?php echo $row_RS_Badetraeume['titel']; ?></option>
</select>
<div id="showteaser"> </div>
</form>


<script>
var teaserInhalt = {
'1': document.getElementById('aktuelles_inhalt').innerHTML,
'2': document.getElementById('badetraeume_inhalt').innerHTML
};
var form = document.getElementById('teaserDetails');
form.elements.teaser.onchange = function () {
var form = this.form;
form.elements.showteaser.value = teaserInhalt[this.value];
};
</script>
4

3 回答 3

0

尝试:

document.getElementById('showteaser').html = teaserInhalt[this.value];

代替

form.elements.showteaser.value = teaserInhalt[this.value];
于 2013-09-07T07:48:49.720 回答
0

代替: form.elements.showteaser.value

尝试将值替换为innerHTML

于 2013-09-07T07:51:58.413 回答
0

改变你的剧本..

    <script>
    var teaserInhalt = {
    '1': document.getElementById('aktuelles_inhalt').innerHTML,
    '2': document.getElementById('badetraeume_inhalt').innerHTML
    };
    var form = document.getElementById('teaserDetails');
    form.elements.teaser.onchange = function () {
     // this change made in your script.   
    document.getElementById('showteaser').innerHTML = teaserInhalt[this.value];

    };
    </script>
于 2013-09-07T08:58:52.333 回答