基本上,我有一个部分有6个选择框,像这样,我使用ajax动态地填充它们,但是根据servlet响应填充的选择字段的数量,比如一些时间、2个选择框或某些时候的5、4、3等等.我隐藏的其他选择箱,但没有被过激。现在,我希望在选择按钮单击事件时,将值输入到相应的输入隐藏字段中,并且我只想将显示的选择框值传递给servelt,而不是所有
<div id="section-2" class="section-content">
<fieldset id="field-1">
<label for="field-1">Data 1</label>
<select id="factor-1"></select>
</fieldset>
<fieldset id="field-2">
<label for="field-2">Data 2</label>
<select id="factor-2"></select>
</fieldset>
<fieldset id="field-3">
<label for="field-3">Data 2</label>
<select id="factor-3"></select>
</fieldset>
<fieldset id="field-4">
<label for="field-4">Data 4</label>
<select id="factor-4"></select>
</fieldset>
<fieldset id="field-5">
<label for="field-5">Data 5</label>
<select id="factor-5"></select>
</fieldset>
<fieldset id="field-6">
<label for="field-6">Data 6</label>
<select id="factor-6"></select>
</fieldset>
<button type="button" id="section2-next"> Next </button>
<input type="text" id="data-1-Id"/>
<input type="text" id="data-2-Id"/>
<input type="text" id="data-3-Id"/>
<input type="text" id="data-4-Id"/>
<input type="text" id="data-5-Id"/>
<input type="text" id="data-6-Id"/>
</div>这是我的$.ajax()电话..。
$("#section2-next").click(function(){
var param1= $("#data-1-Id").val();
var param2= $("#data-2-Id").val();
var param3= $("#data-3-Id").val();
var param4= $("#data-4-Id").val();
var param5= $("#data-5-Id").val();
var param6= $("#data-6-Id").val();
// here i am having problem how to pass only filled input filed value not all 6 parammeters on every ajax request.........
var dataString = 'param1='+param1+"¶m2="+param2+"¶m3="+param3+"¶m4="+param4+"¶m5="+param5+"¶m6="+param6;
console.log(dataString);
$.ajax({
type:"Post",
url:"GetPrice",
datatype:"json",
data : dataString,
success: function(data){
// var price = data.asset;
var parsed = JSON.parse(data);
var price = parsed[0].FormattedPrice;
$('#price').empty().text(price);
}
});
});以及如何检查servlet中是否存在参数?
发布于 2013-08-20 08:56:02
以如下形式包装您的输入:
<form name="section2-next" id="section2-next"> <input type="text" id="data-1-Id"/> <input type="text" id="data-2-Id"/> <input type="text" id="data-3-Id"/>><input type="text" id="data-4-Id"/> <input type="submit"value="submit!"/> <!-- dont forget the input of type submit--> </form>
然后使用$(“#Section2-Next”).submit(函数(事件){ event.preventDefault();//不要忘记这一行。 //而不是$(“#Section2-Next”).click(函数(){
下一首
//您的dataString
var dataString = {param1 : $("#data-1-Id").val() || '', param2 : $("#data-2-Id").val() || ''};// up until param6
和
// for var parsed =JSON.parse(数据);
var parsed = $.parseJSON(data);
最后,
//在php文件
<?phpecho json_encode($_POST);?>中
发布于 2013-08-20 09:01:26
var dataString ="";
if ($("#data-1-Id").val() != '' )
{ dataString = 'param1='+param1; }
...
dataString =dataString+ #2
.do the same for all
...https://stackoverflow.com/questions/18329948
复制相似问题