Javascript 单击将输入值添加到html属性
我有这个:Javascript 单击将输入值添加到html属性,javascript,jquery,html,Javascript,Jquery,Html,我有这个: <input type="text" name="field1" id="firstField"> <input type="text" name="field2" id="secondField"> <button name="submitButton" data-parameter="">Click</button> 点击 单击按钮时,EventListener(jQuery.on)调用函数jQuery.ajax(),以加载处
<input type="text" name="field1" id="firstField">
<input type="text" name="field2" id="secondField">
<button name="submitButton" data-parameter="">Click</button>
点击
单击按钮时,EventListener(jQuery.on
)调用函数jQuery.ajax()
,以加载处理数据的另一个页面
数据参数
属性是$\u POST
的数据
因此,data parameter=“name1=test”
是$\u POST[“name1”]
带有一个值test
但是如何将输入
-字段的值获取到此属性中
我有不止一张这样的表格。有些包含更多的字段,有些包含更少的字段。最简单的方法是调用var serializedFormData=$(yourform).serialize()并将此数据粘贴到按钮$('[name=submitButton]').data('parameter',serializedFormData')。您最好提供一部分代码以便更好地理解。我不知道为什么您不能直接将这些输入字段中的数据发送到$ajax()
$('form button[name="submitButton"]').click(function(){
$(this).data('parameter',$(this).closest('form').serialize());
}
无论如何,获取所有数据并将其放入数据参数的通用代码是。。
步骤1:首先,您需要一个表单或div标记来绑定所有必需的输入字段和一个按钮。
第2步:我希望url post方法中使用的变量名与输入字段名相同,因此仅更改值。正如u所说的,如果字段的数量发生变化,就可以了。即使你可以使用这段代码。
步骤3:我使用按钮的onclick事件捕获所有数据。只有在这之后,你才应该运行代码,通过$\u POST发送
步骤4:根据使用情况更改标签“yourFormID”、“buttonID”和“buttonID”
var data-parameter="";
$('#buttonID').click(function(){
$('#yourFormID input[type=text]').each(function(){
var data-parameter+=$(this).attr("name")+"="+$(this).val()+"&";
});
$('#buttonID').attr("data-parameter",data-parameter);
}
我不明白你的意思。您期望的结果是什么?仅供参考,id必须是唯一的。如果
[name=“field1”]
,为什么还有id=“firstField”
属性?1.我希望字段1和字段2的值进入按钮的数据参数
属性。由于此属性设置由$.ajax()2发送的数据的参数。对不起,第二个id是一个输入错误。我会改正的。3.我几乎总是在ElementsHanks中添加一个id
,这可能会奏效。但是如果我在一个页面上有多个表单,我是否必须为每个表单都做这个?或者可以选择按钮所在的表单元素
?这样您就不需要知道表单的确切名称/id了?因为这样,您就可以使用类.submitButton
为所有按钮创建一个EventListener。我希望你明白我的意思。很难解释我现在更新了代码您不需要表单名称,如果表单中只有1个按钮,您甚至不需要按钮名称,只需使用$('form button')或$('form button[type=“submit”]”)并将按钮类型设置为submit