0

したがって、基本的に、私のループは、$show_id に異なる値を使用して、以下の html を 4 回出力します。Everyform は、関数が呼び出されたときにフォームの値ではなく、最初のフォームの $show_id 値を返します。どうすれば修正できますか?

私のJavaScript

    <script type="text/javascript" >
function addScore() {
    var show_id = $('#show_id').val();  
    var user_id = $('#user_id').val();
    var score = $('input[name=tvshowrating]:checked').val();
    if(score=='')
    {
        alert('PleaseEnter A Score');
    }
    else
    {
        $("#flash").show();
        $("#flash").html('<img src="ajax-loader.gif" />Loading Score...');
        $.ajax({
            type: "POST",
            url: "showscoreajax.php",
            data:{
                "show_id" : show_id,  
                "user_id" : user_id,
                "score" : score          //we are passing the name value in URL
            },
            cache: false,
            success: function(data){
                $("#flash").html('Added');
            }
        });
    }
    return false;
};

        </script>

myhtml

     <div id="flash"></div>
        <form id="form3B">
            <div class="your-score">
                <div class="">Your Score</div>
                 <input class="hover-star" type="radio" name="tvshowrating" value="1" title="1"/>
                 <input class="hover-star" type="radio" name="tvshowrating" value="2" title="2"/>
                 <input class="hover-star" type="radio" name="tvshowrating" value="3" title="3"/>
                 <input class="hover-star" type="radio" name="tvshowrating" value="4" title="4"/>
                 <input class="hover-star" type="radio" name="tvshowrating" value="5" title="5"/>
                 <input class="hover-star" type="radio" name="tvshowrating" value="6" title="6"/>
                 <input class="hover-star" type="radio" name="tvshowrating" value="7" title="7"/>
                 <input class="hover-star" type="radio" name="tvshowrating" value="8" title="8"/>
                 <input class="hover-star" type="radio" name="tvshowrating" value="9" title="9"/>
                 <input class="hover-star" type="radio" name="tvshowrating" value="10" title="10"/>    
                 <input type="hidden" id="show_id" value="<?php echo $row[0]; ?>" /> 
                 <input type="hidden" id="user_id" value="<?php echo $user_id ?>" />
                 <span id="hover-test" style="margin:0 0 0 20px;"></span>
                 <input id="submitscore" type="submit" value="Submit scores!" onclick="addScore()" />  
            </div>
        </form>
    </div>
</div>
4

1 に答える 1

0

これは、フォームごとに異なる ID が必要な重複クラスとは異なり、ID を重複させることができないためです。このようなもの

<input type="hidden" id="show_id-form3B" value="<?php echo $row[0]; ?>" /> 

そうすれば、それぞれの異なる形態の独自の価値を得ることが可能になります。このようなもの

function addScore(formId) {
var show_id = $('#show_id-'+formId).val();  
var user_id = $('#user_id-'+formId).val();
//add your code

}
于 2013-05-10T12:26:05.727 に答える