0

我有一个带有隐藏输入字段的 Web 表单,如下所示:

<input id="requiredFields" name="requiredFields" type="hidden" value="firstname,lastname,email,phone">

我想,location使用jQuery根据特定条件添加和删除“”,如下所示:

$('input[name="locationstatus"]:radio').on("change", function() {
    if ($('input[name="locationstatus"]:radio:checked').val() == 'Yes') {
        /* need syntax to append text ',location' to #requiredFields string */
    }
    else {
        /* need syntax to remove text ',location' from #requiredFields string */
    }
});

谢谢

4

3 回答 3

3

使用 jQuery.val()更新requiredFields

$('input[name="locationstatus"]:radio').on("change", function() {
    if ($('input[name="locationstatus"]:radio:checked').val() == 'Yes') {
        $('#requiredFields').val($('#requiredFields').val() + ',location');
    }
    else {
        $('#requiredFields').val($('#requiredFields').val().replace(',location',''));
    }
});
于 2013-05-08T18:15:02.070 回答
0

与其尝试附加/删除字符串的一部分,不如只替换整个字符串可能会更容易和更快,假设没有其他字符串,在这种情况下我可以提供更强大的解决方案。

$('input[name="locationstatus"]:radio').on("change", function() {
    if ($('input[name="locationstatus"]:radio:checked').val() == 'Yes') {
        /* need syntax to append ',location' to #requiredFields */
        $('#requiredFields').val('firstname,lastname,email,phone,location');
    }
    else {
        /* need syntax to remove ',location' from #requiredFields */
        $('#requiredFields').val('firstname,lastname,email,phone');
    }
});
于 2013-05-08T18:16:10.970 回答
0

如果要将位置附加到末尾,可以使用该.val()方法。它还能够设置元素的值。

 $('input[name="locationstatus"]:radio').on("change", function() {
   if ($('input[name="locationstatus"]:radio:checked').val() == 'Yes') {
      var prev = $("#requiredFields").val();
      $("#requiredFields").val(prev + ',location');
   }
   else {
    var newText = $("#requiredFields").val().replace(',location', '');
    $("#requiredFields").val(newText);
   }
 });
于 2013-05-08T18:17:29.757 回答