0

2つのラジオボタンがあり、クリックイベントをラジオボタンに追加して、誰かが1つのラジオボタンをクリックすると、部分的なビューをレンダリングするためのアクションが呼び出されるようにします。これが私のラジオボタンです。

<p>
<input id="SelectedInterestRate" type="radio" value="1" name="SelectedInterestRate"     data-val-number="The field must be a number." data-val="true">
<input id="Term" type="hidden" value="12" name="Term">
<input id="InterestRate" type="hidden" value="12.5" name="InterestRate">
<label for="SelectedInterestRate">Finance Test (12.5% APR - 12 Months)</label>
<input id="SelectedInterestRate" type="radio" value="2" name="SelectedInterestRate">
<input id="Term" type="hidden" value="12" name="Term">
<input id="InterestRate" type="hidden" value="18.25" name="InterestRate">
<label for="SelectedInterestRate">Direct finance (18.25% APR - 12 Months)</label>
</p>

そして私のJavascriptはこのように見えます(私はそれが間違っていることを知っています)

$('[name="SelectedInterestRate"]').change(function() {
        alert("interesting here .......");
         var repayblein = $(this).closest("div.divFinanceDetails").find("input Term").val();
    $.ajax({
        type: "POST",
        url: "FinancePayment/SelectedRepaymentMethod",
        data: {
            InterestRate: $(this).closest("div.divFinanceDetails").find("input InterestRate").val(),
            RepayableIn: repayblein
        },
        success: function (partialView) {
            $("FinanceDetailsPlan").html(partialView);
        }
    });
    });

提案がある人はいますか?

4

2 に答える 2

0

答えは次のとおりです。

$(':input[name="SelectedInterestRate"]').change(function() {
    alert("interesting here .......");
     var repayblein = $(this).closest("div.divFinanceDetails").find("input Term").val();
$.ajax({
    type: "POST",
    url: "FinancePayment/SelectedRepaymentMethod",
    data: {
        InterestRate: $(this).closest("div.divFinanceDetails").find("input InterestRate").val(),
        RepayableIn: repayblein
    },
    success: function (partialView) {
        $("FinanceDetailsPlan").html(partialView);
    }
});
});
于 2013-03-06T10:52:50.953 に答える
0

セレクターに関するいくつかの問題。IDで選択する場合は、セレクターの前に。を付ける必要があります#。また、一部の要素には重複したIDがあります。これは適切な方法ではなく、選択が難しいことで有名です。

また、何div.divFinanceDetailsですか?投稿されたコードにも含まれていません

これらの点を念頭に置いて、これを試してください。

$('[name="SelectedInterestRate"]').change(function() {
    alert("interesting here .......");
    var repayblein = $(this).closest("div.divFinanceDetails").find("input[name='Term']").val();
$.ajax({
    type: "POST",
    url: "FinancePayment/SelectedRepaymentMethod",
    data: {
        InterestRate: $(this).closest("div.divFinanceDetails").find("input[name='InterestRate']").val(),
        RepayableIn: repayblein
    },
    success: function (partialView) {
        $("#FinanceDetailsPlan").html(partialView);
    }
});
});
于 2013-03-06T09:33:52.997 に答える