alert(cos.val()) Wyświetla "inny tekst" ale druga linijka już nie. To chyba znaczy że on zmienia ten tekst w kopi zmiennej template a nie w tej zmiennej. Oprócz tego dodawany do formularza jest bez problemu.
<script type="text/javascript"> $(document).ready(function()
{
$("select#databases option").click(
function()
{
hideAll();
$("select#" + this.text).css("display", "block")
});
$("select.tables option").click(
function()
{
var database = $(this).parent().attr("id")
var table = this.text
var form = $("form#selected-tables");
var template = $("div#template").html();
var cos = $("input[name='databases[]']", template).val("inny tekst")
// TUTAJ JEST PROBLEM
alert(cos.val())
alert($("input[name='databases[]']", template).val())
form.append(template)
});
});
function hideAll()
{
$("select#databases option").each(function()
{
$("select#" + this.text).css("display", "none")
})
}
select { float:left; width:25%; height:200px; margin:0; border:0; }
select.tables { width:75%; display:none; }
input.add { width:100%; }
div.table { margin:0.5em; }
div#template { display:none; }
<select id="databases" multiple> {foreach from="collection" item="database"}
{/foreach}
{foreach from="collection" item="database"}
<select id="{$database->getName()}" class="tables" multiple{if $database->count() == 0} disabled{/if}>
{foreach from="database" item="table"}
{/foreach}
{/foreach}
<form id="selected-tables" action="#" method="POST"> <input class="add" type="submit" value="Reverse"> <div id="template"><div class="table">Database:
<input name="databases[]" value="tekst" type="text" disabled> Table:
<input name="tables[]" type="text" disabled> <input value="-" type="button"></div></div>
Niestety skrypt forum usuwa mi tabulacje.
Ten post edytował orglee 11.11.2008, 11:19:00