0

この関数の追加に問題があります:

    <!-- js code here -->
    <script>
        function newAssign(divID)
        {
            $("div[id='"+divID+"']").append("<p> hello! </p>");
        }
    </script>

phpコード-divIDonChangeselectを使用してnewAssignを呼び出します

     <?php foreach($myvar as $each): ?>
          <select name="weekday" class="innerComboStyle" onChange="newAssign(<?php echo $each->getId() ?>);" >
                <!-- <options here... -->
          </select>
    <div id="<?php echo $each->getId() ?>" ></div>
    <?php endforeach; ?>

Firebugコンソールでエラーは発生しませんでしたが、appendがまだ機能しません!

4

2 に答える 2

3

call'の引数の周りにquotes( ) がありません:newAssign

onChange="newAssign('<?php echo $each->getId() ?>')"

getId()が数値または文字列thisでない限り'、javascript が変数名を渡していると見なすため、入力しないと機能しません。また、うまくいったとしても、意図したとおりにならない可能性があります。

代わりに を使用できます$('#' + divId).append(...)。使用するよりも見やすいですid=

于 2012-08-15T08:11:16.827 に答える
0

呼び出しで id をアポストロフィで囲む必要があります。そうしないと、変数名として解釈されます。

<select name="weekday" class="innerComboStyle" onChange="newAssign('<?php echo $each->getId() ?>');" >

通常、ID はページ内で一意であり、div にない ID は使用しないと思われるため、セレクターで ID を使用するだけで済みます。

$("#"+divID).append("<p> hello! </p>");
于 2012-08-15T08:11:37.963 に答える