javascript - 如何通过 AJAX 发送单选按钮值?

标签 javascript jquery ajax input radio-button

我创建了一个“全局”ajax-modal-function,它发送 ajax 请求,其值存储在父级 #modal-contentdata-array 中。

这就是 HTML 字段的样子(作为示例):

<input data-array='data[]' name='gender' type='radio' value='1' /> 
<input data-array="data[]" type="password" name="password" />

这就是我在使用 $.ajax JQuery 函数获取当前模式的每个输入字段的所有数据之前存储数据的方式:

var data_array = $('#modal-content').find('*[data-array]').map(function(idx, elem) {    
    return elem.value.trim(); 
}).get();

然后 $.ajax 函数如下所示:

$.ajax({
    type: "POST", url: "ajax_modal.php", dataType: "json",
    data: { 
        data: data_array, 
        data_case: data_case, 
        id: id, 
        uid: uid, 
        dataString: 'modal_save' 
    },
    success: function(data) {

所以数组存储在data_array中并且工作正常。

但现在我有这个 radio 输入字段或复选框。如何根据用户是否单击它来获取数组中的值来存储其值?

最佳答案

单选按钮和复选框有一个属性checked。如果您所在的输入元素属于该类型,您应该明确检查这一点。

var data_array = $('#modal-content').find('*[data-array]').map(function(idx, elem) {
   if (elem.type === 'radio' || elem.type === 'checkbox') {
       return elem.checked && elem.value;
   } else {
       return elem.value.trim(); 
   }
}).get();

关于javascript - 如何通过 AJAX 发送单选按钮值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30716646/

相关文章:

jquery - 不确定我是否完全理解 jQuery 委托(delegate)

javascript - 使用太多 'if' 语句是不是编程不好?

javascript - 发送查看......来自两个不同数据库的信息

javascript - 在同步回调函数中等待异步回调函数

php - 如何将单选按钮放入输出表中?

javascript - jQuery 属性等于选择器 [name=”value”] 传递以反斜杠结尾的变量时出现问题

javascript - Firebase orderBy 查询返回 null

javascript - 构建我的第一个 Javascript 应用程序 (jQuery),苦苦挣扎

android - Ajax 成功功能不适用于 android webview

jquery ajax返回错误但成功